Vba: як підрахувати кількість рядків у діапазоні


Ви можете використовувати такий базовий синтаксис, щоб підрахувати кількість рядків у діапазоні в Excel за допомогою VBA:

 SubCountRows ()
    Range(" E2 ") = Range(" A:A ").Cells.SpecialCells(xlCellTypeConstants).Count
End Sub

У цьому конкретному прикладі підраховується кількість рядків у стовпці A, а потім результат призначається клітинці E2 .

Якщо натомість потрібно відобразити кількість рядків у вікні повідомлення, можна використати такий синтаксис:

 SubCountRows ()
    'Create variable to store number of rows
    Dim row_count As Integer
    
    'Calculate number of rows in range
    row_count = Range(" A:A ").Cells.SpecialCells(xlCellTypeConstants).Count
    
    'Display the result
    MsgBox " Rows in Column A: " & row_count
End Sub

У наведених нижче прикладах показано, як використовувати кожен із цих методів на практиці з таким набором даних у Excel, який містить імена баскетболістів трьох різних команд:

Приклад 1: підрахунок рядків у діапазоні за допомогою VBA та відображення результатів у комірці

Припустімо, ми хочемо обчислити кількість рядків у стовпці A та відобразити результати в певній клітинці.

Для цього ми можемо створити такий макрос:

 SubCountRows ()
    Range(" E2 ") = Range(" A:A ").Cells.SpecialCells(xlCellTypeConstants).Count
End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

Зверніть увагу, що клітинка E2 містить значення 9 .

Це говорить нам, що в стовпці A є 9 рядків зі значеннями.

Приклад 2: підрахунок рядків у діапазоні за допомогою VBA та відображення результатів у вікні повідомлень

Припустімо, замість цього ми хочемо підрахувати кількість рядків у стовпці A та відобразити результати у вікні повідомлення.

Для цього ми можемо створити такий макрос:

 SubCountRows ()
    'Create variable to store number of rows
Dim row_count As Integer
    
    'Calculate number of rows in range
    row_count = Range(" A:A ").Cells.SpecialCells(xlCellTypeConstants).Count
    
    'Display the result
    MsgBox " Rows in Column A: " & row_count
End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

У вікні повідомлення повідомляється, що в стовпці A є 9 рядків зі значеннями.

Зауважте, що в цьому прикладі ми обчислили кількість рядків у всьому стовпці A, використовуючи A:A як діапазон.

Однак якщо замість цього ви хочете обчислити кількість рядків зі значеннями в певному діапазоні, ви можете ввести A2:A9 (або будь-який інший діапазон, який вас цікавить).

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

VBA: як написати функції AVERAGEIF і AVERAGEIFS
VBA: як написати функції SUMIF і SUMIFS
VBA: як написати функції COUNTIF і COUNTIFS

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *