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
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