VBA Logical Operators: AND, OR, NOT, IF NOT v Excel VBA

VBA Logical Operators: A, NEBO, NE

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

VBA Logical Operatorů
VBA Logical Operatorů

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