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: Як додати значення в діапазон