Operatory logiczne VBA: AND, OR, NOT, IF NOT w Excel VBA

Spisie treści:

Anonim

Operatory logiczne VBA: AND, OR, NOT

Operatory logiczne Excel VBA

Powiedzmy, że chcesz przetworzyć zamówienie klienta. W tym celu chcesz najpierw sprawdzić, czy zamówiony produkt istnieje, czy nie. Jeśli tak, chcesz również sprawdzić, czy dostępna ilość jest wystarczająca. W takich przypadkach przydają się operatory logiczne. Operatory logiczne służą do oceny więcej niż jednego warunku.

W poniższej tabeli wymieniono główne operatory logiczne programu Excel VBA AND, OR, NOT:

S / N Operator Opis Przykład Wynik
1 I AND: Służy do łączenia więcej niż jednego warunku. Jeśli wszystkie warunki są spełnione, AND przyjmuje wartość true. Jeśli którykolwiek z warunków jest fałszywy, AND przyjmuje wartość fałsz Jeśli prawda = prawda I fałsz = prawda WTEDY fałszywy
2 LUB LUB: Służy do łączenia więcej niż jednego warunku. Jeśli którykolwiek z warunków ma wartość true, OR zwraca true. Jeśli wszystkie są fałszywe, OR zwraca fałsz Jeśli prawda = prawda LUB prawda = fałsz TO prawdziwe
3 NIE NIE: Ta funkcja działa jak funkcja odwrotna. Jeśli warunek jest prawdziwy, zwraca fałsz, a jeśli warunek jest fałszywy, zwraca prawdę. Jeśli NIE (prawda) Wtedy fałszywy

Przykładowy kod źródłowy operatorów logicznych VBA

Dla uproszczenia będziemy porównywać liczby zakodowane na stałe.

Dodaj przyciski ActiveX do arkusza za pomocą opcji „Wstaw”.

Ustaw właściwości, jak pokazano na poniższym obrazku

Operatory logiczne VBA

W poniższej tabeli przedstawiono właściwości, które należy zmienić, oraz wartości, które należy również zaktualizować.

S / N Kontrola własność Wartość
1 CommandButton1 Nazwa btnAND
Podpis Operator AND (0 = 0)
2 CommandButton2 Nazwa btnOR
Podpis OR Operator (1 = 1) Lub (5 = 0)
3 CommandButton3 Nazwa btnNOT
Podpis NIE Operator Nie (0 =)

Dodaj następujący kod do btnAND_Click

Private Sub btnAND_Click()If (1 = 1) And (0 = 0) ThenMsgBox "AND evaluated to TRUE", vbOKOnly, "AND operator"ElseMsgBox "AND evaluated to FALSE", vbOKOnly, "AND operator"End IfEnd Sub

VBA Jeśli AND Operator

  • „Jeśli (1 = 1) I (0 = 0) Wtedy” instrukcja if używa operatora logicznego AND, aby połączyć dwa warunki (1 = 1) I (0 = 0). Jeśli oba warunki są spełnione, wykonywany jest kod powyżej słowa kluczowego „Else”. Jeśli oba warunki nie są spełnione, wykonywany jest kod poniżej słowa kluczowego „Else”.

Dodaj następujący kod do btnOR_Click

Private Sub btnOR_Click()If (1 = 1) Or (5 = 0) ThenMsgBox "OR evaluated to TRUE", vbOKOnly, "OR operator"ElseMsgBox "OR evaluated to FALSE", vbOKOnly, "OR operator"End IfEnd Sub

VBA Jeśli OR Operator

  • „Jeśli (1 = 1) Lub (5 = 0) Wtedy” instrukcja if używa operatora logicznego OR do połączenia dwóch warunków (1 = 1) i (5 = 0). Jeśli którykolwiek z warunków jest spełniony, wykonywany jest kod powyżej słowa kluczowego Else. Jeśli oba warunki są fałszywe, wykonywany jest kod poniżej słowa kluczowego Else.

Dodaj następujący kod do btnNOT_Click

Private Sub btnNOT_Click()If Not (0 = 0) ThenMsgBox "NOT evaluated to TRUE", vbOKOnly, "NOT operator"ElseMsgBox "NOT evaluated to FALSE", vbOKOnly, "NOT operator"End IfEnd Sub

Operator VBA, jeśli NIE

  • „Jeśli nie (0 = 0) to” funkcja VBA Jeśli nie używa operatora logicznego NOT, aby zanegować wynik warunku instrukcji if. Jeśli warunki są spełnione, wykonywany jest kod poniżej słowa kluczowego „Else”. Jeśli warunek jest spełniony, wykonywany jest kod powyżej słowa kluczowego Else.

Pobierz Excel zawierający powyższy kod