Vba: как найти максимальное значение в диапазоне
Вы можете использовать следующий базовый синтаксис для вычисления максимального значения в диапазоне с помощью VBA:
SubMaxValue ()
Range(" D2 ") = WorksheetFunction.Max(Range(" B2:B11 "))
End Sub
В этом конкретном примере вычисляет максимальное значение в диапазоне B2:B11 и присваивает результат ячейке D2 .
Если вместо этого вы хотите отобразить максимальное значение в окне сообщения, вы можете использовать следующий синтаксис:
SubMaxValue ()
'Create variable to store max value
Dim maxValue As Single
'Calculate max value in range
maxValue = WorksheetFunction.Max(Range(" B2:B11 "))
'Display the result
MsgBox " Max Value in Range: " & maxValue
End Sub
В следующих примерах показано, как использовать каждый из этих методов на практике со следующим набором данных в Excel, содержащим информацию о различных баскетболистах:
Пример 1. Вычисление максимального значения диапазона с помощью VBA и отображение результатов в ячейке.
Предположим, мы хотим вычислить максимальное значение в столбце точек и отобразить результаты в определенной ячейке.
Для этого мы можем создать следующий макрос:
SubMaxValue ()
Range(" D2 ") = WorksheetFunction.Max(Range(" B2:B11 "))
End Sub
Когда мы запускаем этот макрос, мы получаем следующий вывод:
Обратите внимание, что ячейка D2 содержит значение 43 .
Это говорит нам о том, что максимальное значение в столбце баллов равно 43.
Пример 2. Вычисление максимального значения диапазона с помощью VBA и отображение результатов в окне сообщения.
Предположим, что вместо этого мы хотим вычислить максимальное значение в столбце точек и отобразить результаты в окне сообщения.
Для этого мы можем создать следующий макрос:
SubMaxValue ()
'Create variable to store max value
Dim maxValue As Single
'Calculate max value in range
maxValue = WorksheetFunction.Max(Range(" B2:B11 "))
'Display the result
MsgBox " Max Value in Range: " & maxValue
End Sub
Когда мы запускаем этот макрос, мы получаем следующий вывод:
В окне сообщения сообщается, что максимальное значение в диапазоне B2:B11 равно 43 .
Обратите внимание, что в этом примере мы вычислили максимальное значение в диапазоне B2:B11 .
Однако если вместо этого вы хотите вычислить максимальное значение во всем столбце, вы можете вместо этого ввести B:B .
Это позволит рассчитать максимальное значение во всем столбце B.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:
VBA: Как рассчитать среднее значение диапазона
VBA: как подсчитать количество строк в диапазоне
VBA: Как добавить значения в диапазон