Похожие вопросы

Ввод только уникальных значений в столбец в Excel 2007
Как выполнить хранимую процедуру SQL в Microsoft Excel?
Поиск VBA по нескольким критериям-затем скопируйте и вставьте
Как вставить даты в Excel?
Удалить секунды из значения поля даты-времени Excel
Excel-как экранировать столбцы A и B и убедиться, что значение в столбце C соответствует любой комбинации в ячейке A & B?
Как сказать Excel не скрывать выделение, когда оно становится неактивным?
Создание папок и вложенных папок из значений ячеек Excel
Преобразование массива в строку с Формулой Excel, это возможно?
Пары значений в Excel
Условное форматирование: ячейка равна нулю и не пуста
Получение заголовка веб-страницы в Excel
Отключить возможности "создать ярлык "и" отправить на рабочий стол " через Excel?
Создание контактов CSV из электронной таблицы
Объединение данных из двух отдельных таблиц в Power Pivot без использования объединения на основе объединенного ключа

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

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

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

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

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

rowheight = rowheight + X

не

rowheight = X



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

5
задан aparente001
источник

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 2011-08-01 15:09:57
источник

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

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

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

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

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

6
отвечен Spanka 2015-10-06 17:52:52
источник

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

сначала он устанавливает вертикальное выравнивание для каждой ячейки 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 2011-08-02 04:11:50
источник

растолковывать ответ С 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 2017-03-20 10:16:54
источник

Другие вопросы microsoft-excel microsoft-excel-2007 vba