Operatori logici VBA: AND, OR, NOT
Operatori logici VBA di Excel
Supponiamo che tu voglia elaborare un ordine cliente. Per questo, vuoi prima controllare per vedere se il prodotto ordinato esiste o meno. Se lo fa, vuoi anche controllare se la quantità a portata di mano è sufficiente. Gli operatori logici sono utili in questi casi. Gli operatori logici vengono utilizzati per valutare più di una condizione.
I principali operatori logici VBA di Excel AND, OR, NOT sono elencati nella tabella seguente:
S / N | Operatore | Descrizione | Esempio | Produzione |
1 | E | AND: viene utilizzato per combinare più di una condizione. Se tutte le condizioni sono vere, AND restituisce vero. Se una qualsiasi delle condizioni è false, AND restituisce false | Se vero = vero E falso = vero ALLORA | falso |
2 | O | OPPURE: viene utilizzato per combinare più di una condizione. Se una delle condizioni restituisce true, OR restituisce true. Se sono tutti falsi, OR restituisce false | Se vero = vero O vero = falso ALLORA | vero |
3 | NON | NOT: questa funziona come una funzione inversa. Se la condizione è vera, restituisce falso e se una condizione è falsa, restituisce vero. | Se NON (vero) Allora | falso |
Codice sorgente di esempio degli operatori logici VBA
Per semplicità, confronteremo i numeri codificati.
Aggiungi i pulsanti ActiveX al foglio dall'opzione "Inserisci".
Imposta le proprietà come mostrato nell'immagine sottostante

La tabella seguente mostra le proprietà che è necessario modificare e anche i valori che è necessario aggiornare.
S / N | Controllo | Proprietà | Valore |
1 | CommandButton1 | Nome | btnAND |
Didascalia | Operatore AND (0 = 0) | ||
2 | CommandButton2 | Nome | btnOR |
Didascalia | Operatore OR (1 = 1) Or (5 = 0) | ||
3 | CommandButton3 | Nome | btnNOT |
Didascalia | Operatore NOT Non (0 =) |
Aggiungi il codice seguente a 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" l'istruzione if utilizza l'operatore logico AND per combinare due condizioni (1 = 1) And (0 = 0). Se entrambe le condizioni sono vere, viene eseguito il codice sopra la parola chiave "Else". Se entrambe le condizioni non sono vere, viene eseguito il codice sotto la parola chiave "Else".
Aggiungi il codice seguente a 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 If OR Operator
- "If (1 = 1) Or (5 = 0) Then" l'istruzione if utilizza l'operatore logico OR per combinare due condizioni (1 = 1) And (5 = 0). Se una delle condizioni è vera, viene eseguito il codice sopra la parola chiave Else. Se entrambe le condizioni sono false, viene eseguito il codice sotto la parola chiave Else.
Aggiungi il codice seguente a 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
Operatore VBA If NOT
- "If Not (0 = 0) Then" la funzione If Not di VBA utilizza l'operatore logico NOT per negare il risultato della condizione dell'istruzione if. Se le condizioni sono vere, viene eseguito il codice sotto la parola chiave "Else". Se la condizione è vera, viene eseguito il codice sopra la parola chiave Else.
Scarica Excel contenente il codice sopra