VBA SE NON - Come utilizzare la funzione IF e NOT in Excel VBA?

Sommario

SE NON in VBA

Le funzioni logiche sono utili per i calcoli che richiedono più condizioni o criteri da testare. Nei nostri articoli precedenti, abbiamo visto le condizioni "VBA IF", "VBA OR" e "VBA AND". In questo articolo, discuteremo la funzione "VBA SE NON". Prima di introdurre la funzione VBA SE NON, lascia che ti mostri prima la funzione VBA NON.

Cosa NON è la funzione in VBA?

"NOT" è una delle funzioni logiche che abbiamo con Excel e VBA. Tutte le funzioni logiche richiedono l'esecuzione di test logici e restituiscono TRUE se il test logico è corretto. Se il test logico non è corretto, restituirà FALSE come risultato.

Ma "VBA NOT" è completamente l'opposto dell'altra funzione logica. Direi che questa è la funzione inversa delle funzioni logiche.

La funzione "VBA NOT" restituisce "FALSE" se il test logico è corretto e se il test logico non è corretto, restituirà "TRUE". Ora, guarda la sintassi della funzione "VBA NOT".

NOT (test logico)

Questo è molto semplice, dobbiamo fornire il test logico. La funzione NOT valuta il test e restituisce il risultato.

Esempi di funzioni NOT e IF in VBA?

Di seguito sono riportati gli esempi di utilizzo della funzione IF e NOT in Excel VBA.

Esempio 1

Dai un'occhiata al codice seguente per un esempio.

Codice:

Sub NOT_Example () Dim k As String k = Not (100 = 100) MsgBox k End Sub

Nel codice sopra, ho dichiarato la variabile come String.

Dim k As String

Quindi per questa variabile, ho assegnato la funzione NOT con il test logico come 100 = 100.

k = Non (100 = 100)

Quindi ho scritto il codice per mostrare il risultato nella finestra di messaggio VBA. MsgBox k

Ora eseguirò il codice e vedrò il risultato.

Abbiamo ottenuto il risultato come "FALSO".

Ora guarda indietro al test logico. Abbiamo fornito il test logico come 100 = 100, che è generalmente VERO poiché abbiamo dato la funzione NOT, abbiamo ottenuto il risultato come FALSO. Come ho detto, all'inizio, dà risultati inversi rispetto ad altre funzioni logiche. Poiché 100 è uguale a 100, il risultato è stato restituito come FALSO.

Esempio n. 2

Adesso. Facciamo un altro esempio con numeri diversi.

Codice:

Sub NOT_Example () Dim k As String k = Not (85 = 148) MsgBox k End Sub

Il codice è la stessa, l'unica cosa che ho cambiato qui è che ho cambiato il test logico da 100 = 100 a 85 = 148.

Ora eseguirò il codice e vedrò qual è il risultato.

Questa volta abbiamo ottenuto il risultato come VERO. Ora esamina il test logico.

k = Non (85 = 148)

Sappiamo tutti che 85 non è uguale al numero 148. Poiché non è uguale, la funzione NOT ha restituito il risultato come VERO.

NON con IF Condizione:

In Excel o VBA, le condizioni logiche non sono complete senza la combinazione IF condition. Usando IF in excel condition, possiamo fare molte altre cose oltre al valore predefinito TRUE o FALSE. Ad esempio, negli esempi precedenti, abbiamo ottenuto i risultati predefiniti di FALSE & TRUE; invece di quello, possiamo modificare il risultato con le nostre stesse parole.

Guarda il codice sottostante.

Codice:

Sub NOT_Example2 () Dim Number1 As String Dim Number2 As String Number1 = 100 Number2 = 100 If Not (Number1 = Number2) Allora MsgBox "Number 1 non è uguale a Number 2" Else MsgBox "Number 1 è uguale a Number 2" End If End Sub

Ho dichiarato due variabili.

Dim Number1 As String & Dim Number2 As String

Per queste due variabili, ho assegnato i numeri rispettivamente come 100 e 100.

Numero1 = 100 e Numero2 = 100

Quindi per la funzione NOT, ho allegato la condizione SE per modificare il valore predefinito VERO o FALSO. Se il risultato della funzione NOT è TRUE, il mio risultato sarà il seguente.

MsgBox "Il numero 1 non è uguale al numero 2."

Se il risultato della funzione NOT è FALSO, il mio risultato è il seguente.

MsgBox "Il numero 1 è uguale al numero 2."

Ora eseguirò il codice e vedrò cosa succede.

Abbiamo ottenuto il risultato come "Numero 1 è uguale a Numero 2", quindi la funzione NON ha restituito il risultato FALSO alla condizione SE, quindi la condizione SE ha restituito questo risultato.

In questo modo, possiamo usare la condizione IF per eseguire il test inverso.

Articoli interessanti...