Logické operátory VBA: AND, OR, NOT, IF NOT in Excel VBA

Obsah:

Anonim

Logickí operátori VBA: AND, OR, NOT

Logické operátory Excel VBA

Povedzme, že chcete vybaviť objednávku zákazníka. Z tohto dôvodu chcete najskôr skontrolovať, či objednaný produkt existuje alebo nie. Ak sa tak stane, tiež by ste si mali skontrolovať, či je po ruke dostatočné množstvo. V takýchto prípadoch prídu vhod logické operátory. Na vyhodnotenie viac ako jednej podmienky sa používajú logické operátory.

Hlavné logické operátory Excel VBA AND, OR, NOT sú uvedené v nasledujúcej tabuľke:

S / N Prevádzkovateľ Popis Príklad Výkon
1 A AND: Používa sa na kombinovanie viac ako jednej podmienky. Ak sú splnené všetky podmienky, AND sa vyhodnotí ako pravdivé. Ak je ktorákoľvek z podmienok nepravdivá, AND sa vyhodnotí ako nepravdivé Ak true = true AND false = true POTOM nepravdivé
2 ALEBO ALEBO: Používa sa na kombinovanie viacerých podmienok. Ak niektorá z podmienok vyhodnotí ako true, OR vráti true. Ak sú všetky nepravdivé, funkcia OR vráti nepravdivé Ak true = true OR true = false POTOM pravda
3 NIE NIE: Tento funguje ako inverzná funkcia. Ak je podmienka true, vráti hodnotu false a ak je podmienka false, vráti hodnotu true. Ak NIE (pravda), potom nepravdivé

Príklad zdrojového kódu logických operátorov VBA

Kvôli jednoduchosti budeme porovnávať pevne zakódované čísla.

Pridajte do listu tlačidlá ActiveX z možnosti „Vložiť“.

Nastavte vlastnosti podľa obrázka nižšie

Logickí operátori VBA

Nasledujúca tabuľka zobrazuje vlastnosti, ktoré musíte zmeniť, a hodnoty, ktoré musíte tiež aktualizovať.

S / N Ovládanie Nehnuteľnosť Hodnota
1 CommandButton1 názov btnAND
Titulok Operátor AND (0 = 0)
2 CommandButton2 názov btnOR
Titulok ALEBO operátor (1 = 1) alebo (5 = 0)
3 CommandButton3 názov btnNOT
Titulok NIE operátor nie (0 =)

Pridajte nasledujúci kód 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 If AND Operator

  • „If (1 = 1) And (0 = 0) Then“ príkaz if používa logický operátor AND na spojenie dvoch podmienok (1 = 1) And (0 = 0). Ak sú splnené obe podmienky, vykoná sa kód nad kľúčovým slovom „Else“. Ak obidve podmienky nie sú pravdivé, vykoná sa kód pod kľúčovým slovom „Else“.

Pridajte nasledujúci kód na 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 ako operátor OR

  • „If (1 = 1) Alebo (5 = 0) Then“ príkaz if používa logický operátor OR na spojenie dvoch podmienok (1 = 1) And (5 = 0). Ak je ktorákoľvek z podmienok splnená, vykoná sa kód nad kľúčovým slovom Else. Ak sú obidve podmienky nepravdivé, vykoná sa kód pod kľúčovým slovom Else.

Pridajte nasledujúci kód na 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

VBA, ak NIE je operátor

  • „Ak nie (0 = 0) Then“, funkcia VBA If Not používa NOT logický operátor na vyvrátenie výsledku podmienky príkazu if. Ak sú podmienky pravdivé, vykoná sa kód pod kľúčovým slovom „Else“. Ak je podmienka pravdivá, vykoná sa kód nad kľúčovým slovom Else.

Stiahnite si Excel obsahujúci vyššie uvedený kód