Макрос Excel: можно ли найти высоту строк и ширину столбцов листа? - PullRequest
7 голосов
/ 23 сентября 2010

Есть ли способ найти высоту строк от 1 до 50 и ширину столбцов от A до Z на листе Excel без ручного нажатия и записи ответа?

Спасибо

Майкл.

Ответы [ 3 ]

9 голосов
/ 23 сентября 2010

Для добавления поверх @ Parkyprg

Range("A1:A50").Height      ' height of range
Range("A:Z").Width          ' width of range
Range("A1:A50").Rows.Count  ' number or rows in range
Range("A3").Height          ' height of A3 cell
Range("A3").Width           ' width of A3 cell
3 голосов
/ 23 сентября 2010

В Excel VBA вы можете использовать что-то вроде этого:

Range("A1:A50").Height  

и

Range("A:Z").Width
1 голос
/ 30 июня 2017

В Excel vba получение вывода высот строк легко выполнить с помощью свойства rows.height:

Sub outputRowHeight()
    Dim i As Integer

    For i = 1 To 50
         Debug.Print Rows(i).Address & " is : " & Rows(i).Height
    Next i

End Sub

Для ширины столбца мы используем свойство columns.width. Это немного сложнее, потому что вы не можете напрямую перебирать буквы алфавита, поэтому вместо этого нам нужно использовать индекс:

Sub outputColumnWidths1()
    Dim i As Integer

    For i = 1 To 26 '26th letter is Z
            Debug.Print Columns(i).Address & " is : " & Columns(i).Width
    Next i

End Sub

Если вы хотите избежать необходимости знать индекс буквы, вы можете использовать оператор if для выхода после выхода за пределы диапазона:

Sub outputColumnWidths2()
    Dim i As Integer

    For i = 1 To 99 'using 99 as arbitrary high end number
        If Columns(i).Address <> "$AA:$AA" Then
            Debug.Print Columns(i).Address & " is : " & Columns(i).Width
        Else 'once we get outside of A-Z, we want to end.
            Exit For
        End If
    Next i

End Sub

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

Надеюсь, это поможет!

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