Как я могу получить ячейку в Excel, чтобы автоматически регулировать ее высоту, чтобы соответствовать содержанию обернутого текста? [Дубликат]


23

У меня есть ячейка с обернутым текстовым содержимым в Excel, и я хочу отформатировать ячейку так, чтобы ее высота соответствовала содержанию, которое может занимать несколько строк. Как я могу добиться этого поведения?


Не уверен насчет Excel 2007, но я использую Excel 2003, и там происходит автоматически, когда я вводю многострочные данные в ячейку, высота строки фиксируется при нажатии Enter.
fretje

Ответы:


26

С http://support.microsoft.com/kb/149663

Чтобы настроить высоту строки так, чтобы она помещалась по всему тексту в ячейке, выполните следующие действия.

Выберите строку.

В Microsoft Office Excel 2003 и более ранних версиях Excel укажите «Строка» в меню «Формат», а затем нажмите «Автоподбор».

В Microsoft Office Excel 2007 перейдите на вкладку «Главная», нажмите «Формат» в группе «Ячейки», а затем нажмите «Автоматическая установка высоты строки».

Также работает, когда все строки выбраны


11

Пытаться

Выберите столбец -> столбец правой кнопкой мыши -> Формат ячеек -> вкладка Выравнивание -> Перенос текста


2
Ячейка уже имеет это форматирование, и я хочу, чтобы ячейка также регулировала свою высоту. Я хочу, чтобы высота строки ячейки регулировалась так, чтобы было видно все упакованное содержимое ячейки.
Манга Ли

3
Я не уверен, что вы сможете сделать это, когда содержимое ячейки изменится, но как только ваш двойной щелчок мышью на границе между номером строки и номером ниже, автоматически изменит его в соответствии с содержимым.
полковник

+1: это не плохой ответ. Если вы Wrap Textвыключите и снова включите, Excel изменит размер строки, чтобы соответствовать самой высокой строке. Не подходит, если высота строк изменяется динамически, но если вы имеете дело со статическим текстом, все должно быть в порядке.
Ли Аунг Ип

Это работало для меня в Excel 2019.
猫 IT


2

Если это не происходит автоматически, поместите курсор на маленькую строку между номерами строк (например, между 1 и 2) и дважды щелкните мышью, это изменит размер строки (прямо над маленькой строкой, в примере: 1) так что все видно (с вертикальной стороны).


Это то, что вы можете сделать, когда вам мало что нужно сделать, но чем сложнее, тем больше вам придется иметь дело с этим, а это означает трату времени и энергии, срывая фокус и импульс из-за таких задач. Решение, данное Бертиебом, работает как брелок в Excel 2019.
猫 IT

0

Ты знаешь макрос? Поместите следующий код в

Application.ActiveCell.WrapText = True

внутри вашей подпрограммы Worksheet_SelectionChange.


0

Решением VBA является использование следующего:

 Call Application.ActiveCell.AutoFit

0

Единственный способ заставить его работать должным образом - выделить весь лист с помощью CTRL-A, отменить щелчок по кнопке «Обтекание текстом» на панели инструментов, а затем повторно выбрать его. Другие настройки не меняются, но каждая строка теперь является «правильной» высотой для своего содержимого.


0

Я создал следующий код VB, чтобы изменить размер строки заголовка, когда ячейка в диапазоне (B2: B1500), потому что значения дат выше 28.12.2014 заставят заголовок отображать предупреждение о том, что эти даты в расписании перейдут в 1-я неделя 2015 года:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim KeyCells As Range

    ' The variable KeyCells contains the cells that will
    ' cause an Action when they are changed.
    Set KeyCells = Range("B2:B1500")

    If Not Application.Intersect(KeyCells, Range(Target.Address)) _
           Is Nothing Then

        ' Change the height of the header row when one of the defined cdlls is changed
        Rows("1:1").EntireRow.AutoFit

    End If
End Sub
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.