Зміст
Для виконання набору дій в залежності від заданої умови в мовах програмування використовуються умовні оператори. У даній статті ми покажемо вам, що таке If - Then - Else умовний оператор в VBA Що таке Excel і як ним користуватися.
Завантажити Робочий зошит
Ви можете завантажити безкоштовну практичну книгу Excel тут.
Якщо-Тоді-Інакше в VBA.xlsm
Вступ до інструкції If - Then - Else у мові VBA
VBA If - Then - Else Оператор умовного переходу в основному використовується для визначення послідовності виконання умов. Якщо умова істинна, то виконується певний набір дій, а якщо умова хибна, то виконується інший набір дій.
- Синтаксис
If умова Then [оператори] [Інакше інші_оператори] [оператори] [оператори] [оператори] [оператори] [оператори] [оператори]
Або,
If умова Then [оператори] [Else [інші_оператори]] End If
Ось,
Аргумент | Обов'язково/необов'язково | Опис |
---|---|---|
умова | Необхідно | Числовий вираз або рядковий вираз, який обчислює, чи є вираз Правда або Неправда. Якщо в результаті цього не буде умова дорівнює Нулю, то вважається Неправда. . |
заяви | За бажанням | Однорядкова форма, яка не має Інакше Одне або декілька тверджень повинні бути відокремлені двокрапкою. умова це Правда то ця заява виконується. |
else_statements | За бажанням | Одна або декілька виписок виконуються, якщо попередні виписки не були виконані умова це Правда . |
4 Приклади використання операторів VBA If - Then - Else в Excel
У цьому розділі ви дізнаєтеся, як користуватися If-Then-Else в VBA код з 4 прикладами.
1. знайти найбільше число між двома числами за допомогою оператора If - Then - Else
Якщо у вас є два числа і ви хочете дізнатися, яке з них більше (або менше), то ви можете скористатися функцією If-Then-Else заяву в VBA .
Сходинки:
- Преса Alt + F11 на клавіатурі або перейдіть на вкладку Розробник - Visual Basic відкрити Редактор Visual Basic .
- У вікні коду, що з'явилося, в рядку меню, що з'явилося, натисніть Вставка -> Модуль .
- Скопіюйте наступний код та вставте його у вікно коду.
Private Sub BiggestNumber() Dim Num1 As Integer Dim Num2 As Integer Num1 = 12345 Num2 = 12335 If Num1> Num2 Then MsgBox "Перше число більше за друге" ElseIf Num2> Num1 Then MsgBox "Друге число більше за перше" Else MsgBox "Перше число і друге число рівні" End If End Sub
Ваш код тепер готовий до запуску.
Тут ми порівнюємо дві цифри 12345 і 12335 Цей процес зазвичай ідеально підходить для знаходження великих чисел у великому наборі даних.
- Преса F5 на клавіатурі або в рядку меню виберіть Виконати -> Run Sub/UserForm Ви також можете просто натиснути на кнопку маленька іконка відтворення в рядку підменю для запуску макросу.
Ви отримаєте результат у форматі Excel MsgBox
У нашому випадку кількість 12345 - зберігається у змінній Num1 - більше, ніж число 12335 , Num2 Отже, MsgBox показує нам, що 1-е число більше за 2-е число .
Читати далі: Формула Excel для генерації випадкового числа (5 прикладів)
2. перевірка результату роботи студента з використанням оператора If - Then - Else у VBA
Перевірити, склав чи не склав студент іспит, можна за допомогою цієї відомості в особистому кабінеті VBA код.
Сходинки:
- Як і раніше, відкрито Редактор Visual Basic від Розробник вкладка та Вставка a Модуль у вікні коду.
- У вікні коду скопіюйте наступний код та вставте його.
Sub CheckResult() If Range("D5").Value> 33 Then MsgBox "Результат Джона - Pass" Else MsgBox "Результат Джона - Fail" End If End Sub
Ваш код тепер готовий до запуску.
Цей код перевіряє, чи є комірка D5 має значення, що перевищує 33 Якщо це так, то він покаже один результат, якщо ні, то він покаже щось інше.
- Біжи макрос і ви отримаєте результат відповідно до вашого коду.
Подивіться на вищенаведений набір даних з результатом, комірка D5 трюми 95 що, безумовно, більше, ніж 33 , отже, він відображає Результат - зараховано Але якщо ми запустимо код для Cell D7 (22), то він буде відображати інакше.
Читати далі: Як використовувати оператор case в VBA (13 прикладів)
Схожі читання
- Як використовувати функцію журналу в Excel VBA (5 відповідних прикладів)
- Використання функції VBA LTrim в Excel (4 приклади)
- Як використовувати функцію VBA FileDateTime в Excel (3 приклади)
- Використання оператора Mod у VBA (9 прикладів)
- Функція VBA EXP в Excel (5 прикладів)
3. Оновлення коментарів у студентській оцінці за допомогою декількох операторів If - Then - Else у VBA
Ви навчилися витягувати чи є студент прохідним чи ні за допомогою єдиного If-Then-Else заяву, але цього разу ви дізнаєтесь про Множинні If-Then-Else заяви з наступним прикладом.
Ми проведемо VBA код для заповнення цих Коментар боксів на основі декількох умов.
Сходинки:
- Як і раніше, відкрито Редактор Visual Basic від Розробник вкладка та Вставка a Модуль у вікні коду.
- У вікні коду скопіюйте наступний код та вставте його.
Sub UpdateComment() For Each grade In Range("D5:D10") If grade = "A" Then grade.Offset(0, 1).Value = "Відмінна робота" ElseIf grade = "B" Then grade.Offset(0, 1).Value = "Так тримати" ElseIf grade = "C" Then grade.Offset(0, 1).Value = "Потребує покращення" Else grade.Offset(0, 1).Value = "Батьківські збори" End If Next grade EndSub
Ваш код тепер готовий до запуску.
Даний код буде виводити коментарі відповідно до отриманої студентами оцінки.
- Біжи цей код і побачите наступну картинку, де поля для коментарів заповнені відповідними результатами.
4. оператор If-Then-Esse для оновлення основних напрямків на основі коду в Excel
Ви також можете скористатися If-Then-Else знайти кардинальні напрямки, виходячи з наданого коду індикатора. Подивіться на наступний малюнок, де ми дізнаємося напрямки, виходячи з ініціалів, які були надані.
Сходинки:
- Відкрито Редактор Visual Basic від Розробник вкладка та Вставка a Модуль у вікні коду.
- У вікні коду скопіюйте наступний код та вставте його.
Sub UpdateDir() For Each iDirection In Range("B5:B8") If iDirection = "N" Then iDirection.Offset(0, 1).Value = "North" ElseIf iDirection = "S" Then iDirection.Offset(0, 1).Value = "South" ElseIf iDirection = "E" Then iDirection.Offset(0, 1).Value = "East" Else iDirection.Offset(0, 1).Value = "West" End If Next iDirection EndSub
Ваш код тепер готовий до запуску.
- Біжи цей код і Ви отримаєте назви напрямків у відповідних комірках.
Або, якщо ви хочете знайти лише один напрямок за кодом, то можете скористатися кодом нижче.
Sub UpdateDirections() Dim iDirection As String Dim iDirectionName As String iDirection = Range("B5").Value If iDirection = "N" Then iDirectionName = "North" ElseIf iDirection = "S" Then iDirectionName = "South" ElseIf iDirection = "E" Then iDirectionName = "East" Else iDirectionName = "West" End If Range("C5").Value = iDirectionName End Sub
Цей код буде приймати значення з комірки B5 до уваги і повертає результат відповідно до нього в комірку C5 .
Наприклад, якщо ви пишете " N " в Cell B5 це дасть вам " Північ якщо ви напишете " S " в Cell B5 він покаже вам " Південь " в Cell C5 .
Висновок
У цій статті ви дізналися, як використовувати If - Then - Else виписку в Excel з VBA Сподіваюся, ця стаття була для вас дуже корисною. Не соромтеся запитувати, якщо у вас виникнуть запитання щодо цієї теми.