Vba: как рассчитать среднее значение диапазона


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

 SubAverageRange ()
    Range(" E2 ") = WorksheetFunction.Average(Range(" B1:B12 "))
End Sub

В этом конкретном примере вычисляется среднее значение в диапазоне B2:B12 и присваивается результат ячейке E2 .

Если вместо этого вы хотите отобразить среднее значение в окне сообщения, вы можете использовать следующий синтаксис:

 SubAverageRange ()
    'Create variable to store average value
    Dim avg As Single
    
    'Calculate average value of range
    avg = WorksheetFunction.Average(Range(" B1:B12 "))
    
    'Display the result
    MsgBox " Average Value in Range: " & avg
End Sub

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

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

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

Для этого мы можем создать следующий макрос:

 SubAverageRange ()
    Range(" E2 ") = WorksheetFunction.Average(Range(" B1:B12 "))
End Sub

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

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

Это говорит нам о том, что среднее значение в столбце точек составляет 21,27273.

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

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

Для этого мы можем создать следующий макрос:

 SubAverageRange ()
    'Create variable to store average value
    Dim avg As Single
    
    'Calculate average value of range
    avg = WorksheetFunction.Average(Range(" B1:B12 "))
    
    'Display the result
    MsgBox " Average Value in Range: " & avg
End Sub

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

Средний диапазон VBA

В окне сообщения сообщается, что среднее значение в диапазоне B2:B12 равно 21,27273 .

Обратите внимание, что в этом примере мы вычислили среднее значение в диапазоне B2:B12 .

Однако если вместо этого вы хотите вычислить среднее значение по всему столбцу, вы можете вместо этого ввести B:B .

Это вычислит среднее значение для каждой ячейки в столбце B.

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

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

VBA: Как написать функции СРЗНАЧЕСЛИ и СРЗНАЧЕСЛИ
VBA: как писать функции СУММЕСЛИ и СУММЕСЛИ
VBA: как писать функции COUNTIF и COUNTIFS

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

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