Выражение VBA Если - Тогда - Иначе в Excel (4 примера)

  • Поделись Этим
Hugh West

Условные операторы используются для выполнения набора действий в зависимости от заданного условия в языках программирования. В этой статье мы покажем вам, что такое Если - Тогда - Иначе условное утверждение в VBA Что такое Excel и как его использовать.

Скачать рабочую тетрадь

Вы можете скачать бесплатную практическую рабочую тетрадь Excel отсюда.

If-Then-Else в VBA.xlsm

Введение в оператор If - Then - Else в VBA

VBA Если - Тогда - Иначе Условный оператор в основном используется для определения потока выполнения условий. Если условие истинно, то выполняется определенный набор действий, а если условие ложно, то выполняется другой набор действий.

  • Синтаксис
 If condition Then [statements] [Else else_statements] 

Или,

 If условие Then [statements] [Else [else_statements]] End If 

Вот,

Аргумент Обязательный/ Факультативный Описание
условие Требуется Числовое выражение или строковое выражение, которое оценивает, является ли выражение Правда или Ложь . Если условие равно Null, считается, что Ложь .
заявления Дополнительно Однострочная форма, которая не имеет Else Одно или несколько утверждений должны быть разделены двоеточиями. Если условие это Правда , то это утверждение будет выполнено.
else_statements Дополнительно Одно или несколько утверждений выполняется, если нет предыдущих условие это Правда .

4 Примера использования выражения VBA If - Then - Else в Excel

В этом разделе вы узнаете, как использовать If-Then-Else в VBA код с 4 примерами.

1. Найдите наибольшее число между двумя числами с помощью утверждения Если - Тогда - Иначе

Если у вас есть два числа, и вы хотите узнать, какое из них больше (или меньше), то вы можете использовать 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 "1st Number is Greater than 2nd Number" ElseIf Num2> Num1 Then MsgBox "2nd Number is Greater than 1st Number" Else MsgBox "1st Number and the 2nd Number are Equal" End If End Sub 

Теперь ваш код готов к выполнению.

Здесь мы сравниваем два числа 12345 и 12335 Этот процесс обычно идеально подходит для поиска больших чисел в большом наборе данных.

  • Нажмите F5 на клавиатуре или в строке меню выберите Run -> Run Sub/UserForm Вы также можете просто нажать на маленький значок Play в строке подменю, чтобы запустить макрос.

Вы получите результат в 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 "John's Result is Pass" Else MsgBox "John's Result is Fail" End If End Sub 

Теперь ваш код готов к выполнению.

Этот код проверит, является ли Cell D5 имеет значение, которое больше, чем 33 Если да, то будет показан один вывод, если нет, то другой.

  • Запускайте макрос, и вы получите результат в соответствии с вашим кодом.

Посмотрите на приведенный выше набор данных с результатом, Cell D5 держит 95 что, безусловно, больше, чем 33 , следовательно, он отображает Результат - пропуск . Но если мы запустим код для Cell D7 (22), то он будет отображаться иначе.

Читать далее: Как использовать VBA Case Statement (13 примеров)

Похожие чтения

  • Как использовать функцию Log в 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 заявление, но на этот раз вы узнаете о Множественные "Если-Тогда-Иначе утверждения на следующем примере.

Мы проведем VBA код, чтобы заполнить эти Комментарий ящики на основе нескольких условий.

Шаги:

  • Так же, как и раньше, откройте Редактор Visual Basic из Разработчик вкладка и Вставка a Модуль в окне кода.
  • В окне кода скопируйте следующий код и вставьте его.
 Sub UpdateComment() For Each grade In Range("D5:D10") If grade = "A" Then grade.Offset(0, 1).Value = "Great Work" ElseIf grade = "B" Then grade.Offset(0, 1).Value = "Keep It Up" ElseIf grade = "C" Then grade.Offset(0, 1).Value = "Needs Improvement" Else grade.Offset(0, 1).Value = "Parents-Teacher Meeting" End If Next grade EndSub 

Теперь ваш код готов к выполнению.

Этот код будет печатать комментарии в соответствии с оценкой, полученной студентами.

  • Запускайте этот код и увидим следующую картинку, где поля для комментариев заполнены соответствующими результатами.

4. Выражение If-Then-Else для обновления кардинальных направлений на основе кода в 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 учитывает и возвращает результат в соответствии с ним в Cell C5 .

Например, если вы напишете " N " в клетке B5 это даст вам " Север ; если вы напишете " S " в клетке B5 , он покажет вам " Юг " в клетке C5 .

Заключение

В этой статье вы узнали, как использовать Если - Тогда - Иначе заявление в Excel с VBA Я надеюсь, что эта статья была очень полезна для вас. Не стесняйтесь спрашивать, если у вас есть какие-либо вопросы по этой теме.

Хью Уэст — опытный тренер и аналитик Excel с более чем 10-летним опытом работы в отрасли. Он имеет степень бакалавра в области бухгалтерского учета и финансов и степень магистра делового администрирования. Хью страстно любит преподавать и разработал уникальный подход к обучению, которому легко следовать и который легко понять. Его экспертные знания Excel помогли тысячам студентов и специалистов по всему миру улучшить свои навыки и преуспеть в своей карьере. В своем блоге Хью делится своими знаниями со всем миром, предлагая бесплатные учебные пособия по Excel и онлайн-обучение, чтобы помочь отдельным лицам и компаниям полностью раскрыть свой потенциал.