Как использовать функцию промежуточного итога в vba (с примерами)


Вы можете использовать функцию ПРОМЕЖУТОЧНЫЙ ИТОГ в Excel для расчета общей статистики только для видимых ячеек на листе.

Вы можете использовать следующий базовый синтаксис в VBA для использования функции ПРОМЕЖУТОЧНЫЙ ИТОГО:

 Sub FindSubtotal()
Range(" A16 ") = WorksheetFunction.Subtotal(9, Range(" B2:B11 "))
End Sub

В этом конкретном примере вычисляет сумму значений в видимых ячейках диапазона B2:B11 и отображает результат в ячейке A16 .

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

  • 1 : СРЕДНИЙ
  • 2 : АККАУНТ
  • 3 : АККАУНТ
  • 4 : МАКСИМАЛЬНЫЙ
  • 5 : МИНИМУМ
  • 6 : ПРОДУКТ
  • 7 : Стандартное отклонение
  • 8 : Стандартное отклонение
  • 9 : СУММА
  • 10 : ВАР
  • 11 : ВАРП

В следующем примере показано, как на практике использовать метод Промежуточный итог в VBA.

Пример: Как использовать промежуточный итог в VBA

Допустим, у нас есть следующий набор данных в Excel, содержащий информацию о различных баскетболистах:

Теперь предположим, что мы применяем фильтр, чтобы показывать только те строки, где команда равна A или C:

Мы можем создать следующий макрос для расчета суммы видимых ячеек в столбце точек и отображения результатов в ячейке A16 :

 Sub FindSubtotal()
Range(" A16 ") = WorksheetFunction.Subtotal(9, Range(" B2:B11 "))
End Sub

Когда мы запускаем этот макрос, мы получаем следующий вывод:

Обратите внимание, что ячейка A16 содержит значение 168 .

Это говорит нам о том, что сумма ячеек, видимых в столбце точек, равна 168.

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

Например, мы можем использовать значение 1 , чтобы вместо этого вычислить среднее значение видимых ячеек в столбце точек:

 Sub FindSubtotal()
Range(" A16 ") = WorksheetFunction.Subtotal(1, Range(" B2:B11 "))
End Sub

Когда мы запускаем этот макрос, мы получаем следующий вывод:

Обратите внимание, что ячейка A16 содержит значение 24 .

Это говорит нам о том, что среднее число ячеек, видимых в столбце точек, равно 24.

Примечание . Полную документацию по методу VBA Subtotal можно найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:

VBA: Как добавить значения в диапазон
VBA: Как рассчитать среднее значение диапазона
VBA: как подсчитать количество строк в диапазоне

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *