ใน Google สเปรดชีตฉันจะบังคับให้แถวมีความสูงได้อย่างไร


72

ในสเปรดชีต Google Doc ฉันต้องการให้แต่ละแถวมีความสูงเท่ากันไม่ว่าจะมีข้อความเท่าใดในแต่ละเซลล์

ฉันได้ลอง " ปรับขนาดแถว " แต่ไม่ว่าจะใส่จำนวนพิกเซลเท่าใดแถวจะขยายลงไปจนถึงความสูงของเซลล์สูงสุดด้วยข้อความที่ขยายเต็ม

ฉันจะบังคับให้แถวอยู่ในระดับความสูงและแทรกแถบเลื่อนสำหรับข้อความทั้งหมดที่ยาวกว่าความสูงได้อย่างไร

ข้อความแสดงแทน

นี่คือวิดีโออธิบายสิ่งที่ฉันหมายถึง:

http://screenr.com/Ol4


ฉันหาวิธีทำไม่ได้ ฉันสนใจที่จะเห็นวิธีแก้ไขปัญหานี้เช่นกัน
เบียร์

อาจมีวิธีแสดงจำนวนเนื้อหาที่ จำกัด จากนั้นขยายหรือเปิดในกล่องโดยคลิกที่สคริปต์ที่กำหนดเอง คุณผูกกับอินเทอร์เฟซเฉพาะ scetched ในรูปภาพของคุณอย่างไร
Dan Roberts

วิธีแก้ปัญหาฉันต้องวาง "ข้อความ / ภาพที่ไม่มีที่สิ้นสุด" ลงในเซลล์เล็ก ๆ เพื่อให้ฉันสามารถซูมเข้าและดูข้อความทั้งหมดถ้าฉันต้องการ แต่ทำได้ตลอดเวลาสำรองและดูภาพรวมทั้งหมดของฉัน บันทึกและรหัส ตอนนี้ฉันไม่สามารถรับภาพรวมนี้ได้เนื่องจากข้อความยาวและส่วนแทรกของรหัสขยายทุกอย่างลงไปจนสุดหน้า
Edward Tanguay

ฉันเพิ่งเข้าร่วมดังนั้นการขาดคะแนนตัวแทนของฉันหมายความว่าฉันไม่ได้รับอนุญาตให้อัปโหลดโซลูชันของ user554370 ลงในเรื่องนี้นั่นคือการเพิ่มข้อความจำนวนมากลงในความคิดเห็นแทน ฉันไม่แน่ใจว่ามันจะแก้ไขคำถามของ OP หรือไม่ แต่มันช่วยฉันออกได้แน่นอนขอบคุณ

ใช้เสรีภาพในการโหวต !!
Jacob Jan Tuinstra

คำตอบ:


24

ไม่มีวิธีแก้ปัญหาสำหรับอันนี้ นี่เป็นเพียงการทำงานของ HTML พวกเขากำลังใช้ตารางสำหรับเซลล์และโดยค่าเริ่มต้นจะไม่เพิ่มแถบเลื่อนหากข้อความไม่พอดี บางทีพวกเขาจะเปลี่ยนมันในอนาคต แต่ฉันไม่คิดว่านี่เป็นรายการที่มีความสำคัญ และดูเหมือนว่าคุณสามารถรวมเซลล์ในแนวนอนได้เท่านั้นในกรณีที่คุณต้องการผสานในแนวตั้งเพื่อทำให้มันดูดีขึ้น


5
ฉันสงสัยว่าทำไมพวกเขาจึงไม่ใช้overflow:scrollเซลล์เพื่ออนุญาตสิ่งนี้
เบียร์

6
@Lipis ไม่ถูกต้อง ไม่ใช่ข้อ จำกัด ของ HTML <div style = "overflow: hidden; height: 20px;"> สิ่งที่อยู่ที่นี่ </div> ง่าย ๆ จะเป็นการหลอกลวง
Levitikon

1
@ Levitikon แต่คุณสามารถจินตนาการว่าน่าเกลียดที่จะมีแถบเลื่อนจำนวนมาก? และถ้าคุณไม่มีแถบเลื่อนคุณจะไม่เห็นข้อความทั้งหมด .. และคุณต้องเดาว่ามีอะไรมากกว่าที่จะเห็นหลังจากคุณคลิกที่มันหรืออะไรบางอย่าง .. ฉันไม่คิดว่านั่นเป็น ทางออกที่ดี ..
Lipis

3
@Lipis: ดังนั้นคุณมีเซลล์ {overflow: hidden} cell: hover {overflow: scroll} จากนั้นคุณจะเห็นแถบเลื่อนของเซลล์ที่คุณวางเมาส์ไว้
RickMeasham

1
ตอนนี้มันเป็นไปได้ที่จะรวมเซลล์ในแนวตั้ง
Rubén

22

ฉันได้พบว่าการทำงานเพื่อเพิ่มแถวเพิ่มเติมภายใต้แถวที่คุณกำลังทำงานอยู่แล้วผสานสองแถวด้วยกัน

ตอนนี้ถ้าคุณวางข้อความยาว ๆ ในฟิลด์ใด ๆ ในแถว "double" มันจะแสดงเพียงไม่กี่บรรทัดทำให้แผ่นงานของคุณสะอาดและจัดการได้ ข้อความในเขตข้อมูลใด ๆ ขยายเพื่อให้คุณอ่านถ้าคุณคลิกสองครั้งบนเขตข้อมูลนั้น

ตัวอย่างของข้อความที่ตัดตอนมาแสดงให้เห็นถึงพฤติกรรมที่อธิบายไว้

ข้อเสียปรากฏขึ้นเมื่อพยายามจัดเรียงใหม่หรือเรียงลำดับแถวเนื่องจากแถวทำงาน "สอง" ด้วยวิธีนี้ แต่อาจไม่ใช่ปัญหาใหญ่


ตอนนี้นี่เป็นวิธีแก้ปัญหาความคิดสร้างสรรค์ที่ใช้งานได้จริง! หากคุณไม่สนใจแถวว่างที่พิเศษ คิดดีมาก! หนึ่งข้อแม้: คุณไม่สามารถเปิดใช้งานตัวกรองในช่วงที่มีแถวที่ผสานเช่นนี้
JD Smith

เคล็ดลับที่ดี !!!!!
voxter

20

ตัวเลือกที่สี่จากด้านขวา (แถบเมนู - เมื่อคุณอยู่ในสเปรดชีตพร้อมผลลัพธ์ ฯลฯ ) มีตัวเลือก "WRAP TEXT" เลือกแถวที่คุณต้องการและคลิก

นี่มันเรียงออกมาสำหรับฉัน เมื่อตัดข้อความแล้วและแถวทั้งหมดไปที่ความสูงบรรทัดเดียวฉันก็สามารถเลือกแถวทั้งหมดและปรับขนาดพวกเขาทั้งหมดเมื่อปรับขนาดหนึ่งเช่นเดียวกับใน Excel

** 'ตัดข้อความ' ไม่ได้อยู่ในเมนูแบบเลื่อนลง แต่เป็นปุ่มบน Ribbon ที่อยู่ด้านล่าง (ส่วนเดียวกับการจัดแนวนอนและแนวตั้ง)


2
คำตอบนี้มีประโยชน์มากกว่าคำตอบที่ยอมรับ!
freitass

24
@freitass: สำหรับ OP สิ่งนี้ไม่ได้มีประโยชน์มากขึ้น เขามีรหัสในเซลล์ของเขาซึ่งมีการแพร่กระจายจำนวนมาก การปิดการตัดจะไม่แก้ไขปัญหาของเขา (หรือของฉัน) ในขณะที่คุณเพิ่งจบเซลล์ที่มีตราบใดที่จำนวนบรรทัดใหม่ในเนื้อหาของคุณ มันจะทำงานสำหรับข้อความในย่อหน้าว่า แต่นั่นไม่ใช่ปัญหาของ OP
RickMeasham

4
แม้ว่าคำตอบนี้จะเป็นประโยชน์ แต่ก็ไม่ได้แก้ไขปัญหาของ OP
Rubén

วิธีนี้ใช้ไม่ได้หากคุณมี linefeeds ในข้อความเช่นเนื้อเพลงหรือบทกวี
โหมด Wes

13

เมื่อเซลล์มีอักขระที่มีการแบ่งบรรทัดตัวเลือกการจัดรูปแบบ 'ล้น', 'ตัด' และ 'คลิป' จะไม่มีผลตามที่ต้องการในการจำกัดความสูงของแถว

ในการแก้ไขปัญหานี้เราสามารถสร้างคอลัมน์ที่อยู่ติดกันซึ่งใช้สูตรในการแยกอักขระ linebreak ออกจากนั้นซ่อนคอลัมน์ต้นฉบับ วิธีการนี้จะรักษาความสามารถในการกรองและจัดเรียงข้อมูลได้อย่างเหมาะสม

=arrayformula( iferror( SUBSTITUTE(A:A,char(10), " " ) ))หนึ่งในสูตรดังกล่าวเป็น: วางลงในแถว 1 (แถวส่วนหัว) ของคอลัมน์ที่อยู่ติดกันโดยแทนที่A:Aด้วยป้ายชื่อของคอลัมน์ต้นฉบับ

ซ่อนคอลัมน์เดิมจากนั้นใช้การจัดรูปแบบ [ล้น | คลิป | คลิป] กับคอลัมน์ที่สร้างขึ้นใหม่

แสดงแถวสูงที่ไม่พึงประสงค์

แสดงแถวที่สะดวกขนาดและสูตรที่เปิดใช้งาน


8

วิธีการเกี่ยวกับการใช้บันทึก?

ฉันมีอักขระขึ้นบรรทัดใหม่ในข้อความของฉันที่ฉันต้องการแสดงในแถวเดียวเช่นกัน - สิ่งที่ฉันทำคือการเพิ่มข้อความยาวลงในบันทึกย่อ เหล่านี้อาจมีหลายบรรทัดและแสดงเมื่อคุณลอย - ซึ่งเป็นเรื่องเกี่ยวกับฟังก์ชั่นที่ฉันกำลังมองหา ปัญหาเดียวที่เหลืออยู่จริงๆคือกล่องบันทึกย่อนั้นแคบมาก!

นี่คือสิ่งที่ดูเหมือนตอนนี้เมื่อลอยอยู่ในเซลล์:

ข้อมูลที่มีการขึ้นบรรทัดใหม่ในโน้ต (Google ชีต)

(ฉันรู้ว่านี่ไม่ได้แก้ไขปัญหาของ OP ตามที่ระบุไว้ แต่ไม่มีวิธีที่จะบรรลุสิ่งที่พวกเขาร้องขอใน Google ชีตในปัจจุบัน)


1
ความคิดที่ยอดเยี่ยมและยังเกี่ยวข้องในปี 2018 ขอบคุณมาก!
Liran H

6

Google ชีตใหม่อนุญาตให้รวมเซลล์ในแนวตั้ง การทำเช่นนี้ทำให้ความสูงของแถวถูกรักษาไว้ เมื่อเซลล์อยู่ในโหมดแก้ไขแถบเลื่อนแนวตั้งจะปรากฏขึ้น

ตัวอย่าง

คำแนะนำ - ในการผสานเซลล์ในแนวตั้งและจากนั้นปรับขนาดวัตถุดิบคุณต้องเลือกเซลล์ + หนึ่งเซลล์ร้องและรวม:

  1. อย่าใช้ปุ่ม CTRL เพื่อเลือกหลายเซลล์เพื่อผสาน แต่ให้ใช้ปุ่ม SHIFT + ลูกศรลงแทน(อาจเป็นข้อบกพร่องใน Google ชีตเนื่องจากการเลือกเซลล์ที่อยู่ติดกันด้วย CTRL ทำให้ตัวเลือกการรวมไม่พร้อมใช้งาน)

  2. กดที่ปุ่มผสาน (รวมอยู่ในเมนู: รูปแบบ> ผสานเซลล์> ผสานแนวตั้ง)


2

ไม่มีวิธีการจริงการห่อหุ้มจะส่งผลต่อความกว้างของเซลล์ไม่ใช่ความสูง เมื่อใดก็ตามที่มันรบกวนจิตใจฉันฉันจะเพิ่มข้อความเป็นบล็อกความคิดเห็น เพียงคลิกขวาที่เซลล์ที่เกี่ยวข้องและเลือก "ความคิดเห็น" จากเมนูบริบท ลบข้อความที่สร้างขึ้นอัตโนมัติและวางข้อความของคุณ วิธีนี้คุณจะสามารถรักษาความสูงของแถวคงที่สำหรับแถวทั้งหมดของคุณ


2

ฉันสามารถบรรลุเป้าหมายนี้ได้สองวิธี:

  • ปิดการตัดคำในทุกเซลล์ในแถว (ตามที่ทุกคนได้กล่าวไว้แล้ว)
  • แทนที่ตัวแบ่งบรรทัดทั้งหมดภายในข้อความด้วยช่องว่าง 1000 ช่อง (ช่องว่าง 1000 ช่องจะปรากฏเป็นตัวแบ่งบรรทัด)
  • แทนที่แท็บทั้งหมดภายในข้อความด้วยช่องว่าง 4 ช่อง (ช่องว่าง 4 ช่องจะปรากฏเป็นแท็บ)

ฉันได้เขียนสคริปต์เพื่อให้เรียกใช้จากเครื่องมือ -> ตัวแก้ไขสคริปต์:

function myFunction() {

  var r=SpreadsheetApp.getActiveSheet().getDataRange();
  var rws=r.getNumRows();
  var cls=r.getNumColumns();
  var i,j,a,find,repl;
  find="\n";
  repl="                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                ";
  for (i=1;i<=rws;i++) {
    for (j=1;j<=cls;j++) {
      a=r.getCell(i, j).getValue();
      if (r.getCell(i,j).getFormula()) {continue;}
      try {
        a=a.replace(find,repl);
        r.getCell(i, j).setValue(a);
      }
      catch (err) {continue;}
    }
  }
}

นี่คือสิ่งที่ดูเหมือนว่าจะถูกยุบ: ป้อนคำอธิบายรูปภาพที่นี่

นี่คือสิ่งที่ดูเหมือนว่าเมื่อเซลล์ถูกคลิกสองครั้งและขยายด้วยแถบเลื่อนแนวตั้ง: ป้อนคำอธิบายรูปภาพที่นี่


1

ฉันเห็นด้วยว่าจนถึงตอนนี้มันเป็นไปไม่ได้ แต่คุณลองใช้ตัวอักษรฐานสิบหกที่แตกต่างกันเช่น NBSP สำหรับข้อความของคุณหรือไม่? สิ่งนี้จะทำให้สิ่งต่าง ๆ น่าเกลียดและสูญเสียการจัดรูปแบบของคุณที่ฉันสังเกตเห็นโดยไม่มีการคืนค่าความยาวของรายการไม่มีความสูง

แก้ไข: คุณควรส่ง (ความคิดที่นำเสนอได้ดี) ที่นี่


1

ก่อนอื่นให้ลบตัวกรองทั้งหมดออกจากชีตของคุณหากคุณมี จากนั้นเพียงเพิ่มสคริปต์นี้ในตัวแก้ไขสคริปต์ของคุณและเรียกใช้

function myFunction() {
   var ss = SpreadsheetApp.getActiveSpreadsheet();
   var sheet = ss.getActiveSheet();
   var maxRows = sheet.getMaxRows(); 
   //Logger.log(maxRows);
   for (var i=2; i<=maxRows;)
   {
     sheet.insertRowAfter(i);
     range = 'A'+ i.toString() + ':Z' + (i+1).toString();
     sheet.getRange(range).mergeVertically();
     //sheet.setRowHeight(i+1, 1);
     i += 2;
   }
}

หมายเหตุ: หากคุณต้องการปรับขนาดแถวของคุณด้วยให้ยกเลิกการแสดงความคิดเห็นบรรทัดที่สอง



0

ง่าย เลือกเซลล์ทั้งหมดในสเปรดชีตจากนั้นยกเลิกการเลือกปุ่ม WRAP TEXT ดูปุ่มที่ไฮไลต์ในภาพหน้าจอด้านล่าง ทุกแถวและคอลัมน์จะเปลี่ยนกลับเป็นขนาดเท่ากัน

ป้อนคำอธิบายรูปภาพที่นี่


6
ใช้งานได้เฉพาะเมื่อข้อความถูกห่อ หากข้อความนั้นมีการขึ้นบรรทัดใหม่หรือขึ้นบรรทัดใหม่ (เช่นเดียวกับข้อความที่โพสต์ในคำถาม) ปุ่มนั้นจะไม่ทำอะไรเลย
zeh

1
สิ่งนี้ช่วยฉันในเรื่องที่คล้ายกันซึ่งความสูงของแถวจะไม่ทำงานอย่างถูกต้อง โปรดทราบว่าไอคอนนั้นแตกต่างกันเล็กน้อยใน google docs ใหม่ล่าสุด (เปิดตัวในช่วงปลายปี 2014)
meklarian

0

มันเกี่ยวข้องกับความจริงที่ว่าคุณกำลังคัดลอกและวางจากที่อื่น หากคุณกำลังวางให้คัดลอกวัสดุไปยัง Notepad ก่อนและกำจัดช่องว่างที่ไม่ต้องการ จากนั้นวางลงใน Google Spreadsheet จากนั้นแผ่นปิดจะทำงานอย่างถูกต้อง


0

ตัดข้อความทำงานสำหรับฉัน นี่คือเหตุผล: หลังจากเปิดแถวที่เฉพาะเจาะจงฉันสังเกตว่ามีคอลัมน์ที่บางคนลดความกว้างลงอย่างมาก ไม่ใช่แม้แต่ตัวละครหนึ่งตัวที่เหมาะสมในคอลัมน์นั้น (แต่มีข้อความสองบรรทัดในคอลัมน์นั้น) และทำให้แถวนั้นสูงขึ้นอย่างมาก เนื่องจากคอลัมน์มีขนาดเล็กมากจึงไม่มีข้อความปรากฏให้เห็นและแม้กระทั่งหลังจากปรับขนาดความสูงของแถวจึงไม่เปลี่ยนแปลง เมื่อคลายขนาดแล้วสิ่งที่จำเป็นต้องมีก็คือเปลี่ยนความกว้างของคอลัมน์และตัดแถวอีกครั้ง


-2

ตัวเลือกที่สี่จากด้านขวา (แถบเมนู - เมื่อคุณอยู่ในสเปรดชีตพร้อมผลลัพธ์ ฯลฯ ) มีตัวเลือก "WRAP TEXT" เลือกแถวที่คุณต้องการและคลิก


3
คำถามนี้จะตอบคำถามได้อย่างไร
Vidar S. Ramdal

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.