Макрос Excel: как изменить высоту всех строк, НО, если cell.value = полужирный сделать высоту ячейки больше? - PullRequest
1 голос
/ 01 сентября 2010

Я работаю над длинным списком данных (столбец B), который был отформатирован с использованием полужирный и отступов.Ячейки, выделенные жирным шрифтом, содержат названия заголовков / категорий, а значения ячеек с отступом являются подкатегориями.

Высота строк повсюду.Это должно было быть 10,5 для всего, и жирные ячейки / строки 15. Я могу изменить все на 10,5, но тогда мне нужно потратить немало времени на прокрутку списка, внося изменения в высоту жирных строк.Я использовал средство рисования форматов, но это длинный список, и я не хотел тратить так много времени на эту часть процесса.И теперь я знаю, что мне нужно сделать это еще с 30 документами.

У кого-нибудь есть более быстрый способ сделать это?

Ответы [ 2 ]

5 голосов
/ 01 сентября 2010
Sub setHeights()
Dim targetRange As Range
Dim targetCell As Range

    Set targetRange = Range("B:B")
    For Each targetCell In targetRange
        If Not IsEmpty(targetCell) Then
            If targetCell.Font.Bold Then
                targetCell.RowHeight = 15
            ElseIf targetCell.Font.Superscript Then
                targetCell.RowHeight = 12.75
            Else
                targetCell.RowHeight = 10.5
            End If
        End If
    Next targetCell
End Sub

Возможно, вы захотите изменить Range("B:B") на что-то вроде Table1.Range("B1:B255")

0 голосов
/ 20 мая 2016

Вместо установки диапазона, как показано выше, установите targetRange = Range ("B: B")

Попробуйте установить его следующим образом: Set TargetRange = Range ("B1", Range ("B65536").END (xlUp))

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...