Учебники

9) Логические операторы VBA

Логические операторы VBA: И, ИЛИ, НЕ

Логические Операторы

Допустим, вы хотите обработать заказ клиента. Для этого вы хотите сначала проверить, существует ли заказанный продукт или нет. Если это так, вы также хотите проверить, достаточно ли количества в наличии. Логические операторы пригодятся в таких случаях. Логические операторы используются для оценки более одного условия.

S / N оператор Описание пример Вывод
1 А ТАКЖЕ AND: используется для объединения более одного условия. Если все условия выполняются, И оценивается как истинное. Если какое-либо из условий ложно, И оценивается как ложное Если true = true И false = true THEN ложный
2 ИЛИ ИЛИ: используется для объединения более одного условия. Если какое-либо из условий оценивается как истинное, ИЛИ возвращает истину. Если все они ложны, ИЛИ возвращает ложь Если true = true или true = false THEN правда
3 НЕ НЕ: Это работает как обратная функция. Если условие истинно, оно возвращает ложь, а если условие ложно, оно возвращает истину. Если НЕТ (правда), то ложный

Пример исходного кода

Для простоты мы будем сравнивать жестко закодированные числа.

Добавьте кнопки ActiveX на лист из «Вставить вариант».

Установите свойства, как показано на рисунке ниже

Операторы VBA

В следующей таблице приведены свойства, которые необходимо изменить, и значения, которые необходимо обновить.

S / N контроль Имущество Ценность
1 CommandButton1 имя btnAND
титр И оператор (0 = 0)
2 CommandButton2 имя btnOR
титр Оператор ИЛИ (1 = 1) Или (5 = 0)
3 CommandButton3 имя btnNOT
титр Оператор НЕ (0 =)

Добавьте следующий код в btnAND_Click

Private Sub btnAND_Click()
    If (1 = 1) And (0 = 0) Then
            MsgBox "AND evaluated to TRUE", vbOKOnly, "AND operator"
        Else
            MsgBox "AND evaluated to FALSE", vbOKOnly, "AND operator"
    End If
End Sub

ВОТ,

  • «If (1 = 1) И (0 = 0) Тогда» оператор if использует логический оператор AND для объединения двух условий (1 = 1) И (0 = 0). Если оба условия выполняются, выполняется код над ключевым словом Else. Если оба условия не выполняются, выполняется код под ключевым словом Else.

Добавьте следующий код в btnOR_Click

Private Sub btnOR_Click()
    If (1 = 1) Or (5 = 0) Then
            MsgBox "OR evaluated to TRUE", vbOKOnly, "OR operator"
        Else
            MsgBox "OR evaluated to FALSE", vbOKOnly, "OR operator"
    End If
End Sub

ВОТ,

  • «If (1 = 1) Or (5 = 0) Тогда» оператор if использует логический оператор OR для объединения двух условий (1 = 1) И (5 = 0). Если какое-либо из условий выполняется, выполняется код над ключевым словом Else. Если оба условия ложны, выполняется код под ключевым словом Else.

Добавьте следующий код в btnNOT_Click

Private Sub btnNOT_Click()
    If Not (0 = 0) Then
            MsgBox "NOT evaluated to TRUE", vbOKOnly, "NOT operator"
        Else
            MsgBox "NOT evaluated to FALSE", vbOKOnly, "NOT operator"
    End If
End Sub

ВОТ,

  • «If Not (0 = 0) Then» оператор if использует логический оператор NOT для отмены результата условия. Если условия выполняются, выполняется код под ключевым словом Else. Если условие истинно, выполняется код над ключевым словом Else.

Скачать Excel, содержащий приведенный выше код