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

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

VBA знаходить максимальне значення в діапазоні

У вікні повідомлення повідомляється, що максимальне значення в діапазоні B2:B11 становить 43 .

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

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

Це обчислить максимальне значення у всьому стовпці B.

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

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

VBA: як обчислити середнє значення діапазону
VBA: як підрахувати кількість рядків у діапазоні
VBA: Як додати значення в діапазон

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

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