Как увеличить высоту строки в Excel на X. ie. Добавление отступа по вертикали

у меня есть этот отчет, и я хочу увеличить вертикальную ячейку, чтобы было легче читать.

теперь, как правило, вы можете просто выбрать несколько строк и изменить высоту строки, пока вы не удовлетворены.

однако, в данном случае, у меня есть ячейки с текстом и несколькими строками. Я не могу изменить высоту строки, потому что обернутый текст будет обрезан.

то, что я хочу сделать, это увеличить высота строки кучи клеток по определенному значению.
Вместо того, чтобы просто изменить его на заданное значение.
т.

rowheight = rowheight + X

не

rowheight = X



Вы можете сделать это в Excel? Нужен ли мне VBA?

26
задан aparente001
06.05.2023 10:38 Количество просмотров материала 2572
Распечатать страницу

4 ответа

Я бы пошел на код ниже... не уверен, что будет способ применить его для всех строк один раз. Я был бы рад (и upvote) если кто-то еще здесь знает :)

Sub fixRowHeight()

Dim oRange As Excel.Range
Dim oRow As Excel.Range
Dim dblFactor As Double

Set oRange = Sheets(1).Range("A1:B25")
dblFactor = 5

For Each oRow In oRange.Rows

    oRow.RowHeight = oRow.RowHeight + dblFactor

Next oRow

End Sub
2
отвечен Tiago Cardoso 2023-05-07 18:26

Я только что ударил этот вопрос и вышеуказанное решение не является удовлетворительным в некоторых случаях.

  1. вставить столбец куда-нибудь-вероятно, столбец A. выберите весь столбец.
  2. дайте ему верхние / нижние границы самого толстого вида-твердый жирный бар-применить / ok.
  3. выберите все остальные столбцы, которые вы хотите дополнить. Вертикально по центру.
  4. скрыть граничный столбец и сохранить.

Это дает вам верхняя и нижняя прокладка приблизительно 3 блоков/верхней части & дна 5px. С arial, достаточно держать верхние части и кабели от касатьться краям клетки.

предоставленный код VBA хорош. Но он терпит неудачу, как только ваша электронная таблица просматривается кем-то, кому нужно сузить некоторые столбцы, и поэтому удаляет ручное форматирование или применяет свое собственное. Если пользователь знает, что он делает, он нажмет Ctrl + A и дважды щелкнет индикатор строки, чтобы автоматически поднять все строки.

через границы обеспечивает решение, которое всегда будет работать независимо, если не отформатирован вручную.

6
отвечен Spanka 2023-05-07 20:43

вот макрос, чтобы помочь вам.

сначала он устанавливает вертикальное выравнивание для каждой ячейки Center.

далее, он принимает текущая высота каждой ячейки и добавляет 7.5 к нему (это эквивалентно 10 пикселей). В конце концов, он добавляет 5 пикселей отступ в верхней и нижней части ячейки. Просто изменить это значение в соответствии с вашими предпочтениями.

Sub PadCells()

Set cr = Selection

For Each cr In cr.Rows
    newHeight = cr.RowHeight + 7.5 
    cr.VerticalAlignment = xlCenter
    cr.RowHeight = newHeight
Next cr

End Sub

в использование:

  1. выберите ячейки, для которых вы хотите настроить высоту.
  2. запустить макрос.
0
отвечен Ellesa 2023-05-07 23:00

растолковывать ответ С Tiago Cardoso, я добавил условие, чтобы проверить, чтобы убедиться, что максимальная высота строки не превышала при увеличении высоты строки С размер факторного признака.

Sub FixRowHeight()
    Dim oRange As Excel.Range
    Dim oRow As Excel.Range
    Dim dblFactor As Double

    Set oRange = Sheets(1).Range("A1:O367")
    dblFactor = 12

    For Each oRow In oRange.Rows
        If oRow.RowHeight + dblFactor <= 409.5 Then
            oRow.RowHeight = oRow.RowHeight + dblFactor
        Else
            oRow.RowHeight = 409.5
        End If
    Next oRow
End Sub
0
отвечен Alban 2023-05-08 01:17

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх