VBA Logical Operators: AND, OR, NOT, IF NOT v Excel VBA
Excel VBA Logical Operatorů
Řekněme, že chcete zpracovat objednávku zákazníka. Chcete-li to provést, musíte nejprve zkontrolovat, zda objednaný produkt existuje nebo ne. Pokud ano, měli byste také zkontrolovat, zda je množství po ruce dostatečné. V takových případech se hodí logické operátory. Logické operátory se používají k vyhodnocení více než jedné podmínky.
Hlavní logické operátory Excel VBA AND, OR, NOT jsou uvedeny v tabulce níže:
S / N | OperaTor | Description | Příklad | Výstup |
---|---|---|---|---|
1 | A AUTOMATIZACI | AND: Používá se ke spojení více než jedné podmínky. Pokud jsou všechny podmínky pravdivé, AND se vyhodnotí jako pravdivé. Pokud je některá z podmínek nepravdivá, AND se vyhodnotí jako nepravda | Jestliže true = true AND false = true THEN | nepravdivý |
2 | OR | NEBO: Používá se ke kombinaci více než jedné podmínky. Pokud se některá z podmínek vyhodnotí jako pravdivá, OR vrátí hodnotu true. Pokud jsou všechny nepravdivé, OR vrátí false | Pokud true = true NEBO true = false THEN | pravdivý |
3 | NENÍ | NE: Toto funguje jako inverzní funkce. Pokud je podmínka pravdivá, vrátí hodnotu false, a pokud je podmínka nepravdivá, vrátí hodnotu true. | Pokud NE (pravda) Pak | nepravdivý |
VBA Logical Operators Příklad zdrojového kódu
Pro jednoduchost budeme porovnávat pevně zakódovaná čísla.
Přidejte tlačítka ActiveX na list z možnosti „Vložit“.
Nastavte vlastnosti, jak je znázorněno na obrázku níže
V následující tabulce jsou uvedeny vlastnosti, které je třeba změnit, a hodnoty, které je také třeba aktualizovat.
S / N | ovládání | Vlastnictví | Hodnota |
---|---|---|---|
1 | CommandButton 1 | Jméno | btnAND |
Titulek | A AUTOMATIZACI Operator (0 = 0) | ||
2 | CommandButton 2 | Jméno | btnOR |
Titulek | OR Operator (1 = 1) Nebo (5 = 0) | ||
3 | CommandButton 3 | Jméno | btnNE |
Titulek | NENÍ Operator Not (0 = ) |
Přidejte následující kód do 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
VBA Pokud AND OperaTor
- „Pokud (1 = 1) a (0 = 0), tak“ příkaz if používá logický operátor AND ke kombinaci dvou podmínek (1 = 1) A (0 = 0). Pokud jsou splněny obě podmínky, provede se kód nad klíčovým slovem „Else“. Pokud nejsou splněny obě podmínky, provede se kód pod klíčovým slovem 'Else'.
Přidejte následující kód do 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
VBA Pokud OR OperaTor
- „Pokud (1 = 1) Nebo (5 = 0), tak“ příkaz if používá logický operátor OR ke kombinaci dvou podmínek (1 = 1) A (5 = 0). Pokud je splněna některá z podmínek, provede se kód nad klíčovým slovem Else. Pokud jsou obě podmínky nepravdivé, provede se kód pod klíčovým slovem Else.
Přidejte následující kód do 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
VBA Pokud NE OperaTor
- „Pokud ne (0 = 0), tak“ funkce VBA If Not používá logický operátor NOT k negaci výsledku podmínky příkazu if. Pokud jsou podmínky splněny, spustí se kód pod klíčovým slovem 'Else'. Pokud je podmínka pravdivá, provede se kód nad klíčovým slovem Else.
Stáhněte si Excel obsahující výše uvedený kód