I tre operatori logici più utilizzati in Excel VBA sono: E, OR e NOT. Come sempre, useremo semplici esempi per rendere le cose più chiare.

operatore logico E

Posizionare un pulsante di comando nel foglio di lavoro e aggiungere le righe di codice che segue:

Dim score1 As Integer, score2 As Integer, result As String

score1 = Range("A1").Value

score2 = Range("B1").Value

If score1 >= 60 And score2 > 1 Then

result = "pass"

Else

result = "fail"

End If

Range("C1").Value = result

Spiegazione: se SCORE1 è maggiore o uguale a 60 e score2 è maggiore di 1, ritorna Excel VBA passano, i rendimenti Excel VBA altro sicuro.

Risultato quando si fa clic sul pulsante di comando sul foglio:

Excel VBA Logical Operator And

Conclusione: i rendimenti Excel VBA falliscono perché score2 non è superiore a 1.

logico dell’operatore o

Posizionare un pulsante di comando nel foglio di lavoro e aggiungere le righe di codice che segue:

Dim score1 As Integer, score2 As Integer, result As String

score1 = Range("A1").Value

score2 = Range("B1").Value

If score1 >= 60 Or score2 > 1 Then

result = "pass"

Else

result = "fail"

End If

Range("C1").Value = result

Spiegazione: se SCORE1 è maggiore o uguale a 60 o score2 è maggiore di 1, ritorna Excel VBA passano, i rendimenti Excel VBA altro sicuro.

Risultato quando si fa clic sul pulsante di comando sul foglio:

Excel VBA Logical Operator Or

Conclusione: i rendimenti Excel VBA passano perché SCORE1 è maggiore o uguale a 60.

Operatore logico Non

Posizionare un pulsante di comando nel foglio di lavoro e aggiungere le righe di codice che segue:

Dim score1 As Integer, score2 As Integer, result As String

score1 = Range("A1").Value

score2 = Range("B1").Value

If score1 >= 60 And Not score2 = 1 Then

result = "pass"

Else

result = "fail"

End If

Range("C1").Value = result

Spiegazione: se SCORE1 è maggiore o uguale a 60 e score2 non è uguale a 1, i rendimenti Excel VBA passano, i rendimenti Excel VBA altro sicuro.

Risultato quando si fa clic sul pulsante di comando sul foglio:

Excel VBA Logical Operator Not

Conclusione: i rendimenti Excel VBA falliscono perché score2 è uguale a 1.