VBA SE NON

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.

Puoi scaricare questo modello VBA SE NON Excel qui - Modello VBA SE NON Excel

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 TRUE poiché abbiamo dato la funzione NOT e abbiamo ottenuto il risultato come FALSE. Come ho detto, all'inizio, fornisce risultati inversi rispetto ad altre funzioni logiche. Poiché 100 è uguale a 100, il risultato è stato restituito come FALSO.

Esempio n. 2

Ora guarda 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 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 più cose oltre al valore predefinito VERO o FALSO. Ad esempio, negli esempi precedenti abbiamo ottenuto i risultati predefiniti di FALSO e VERO, invece di questo possiamo modificare il risultato con le nostre 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 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 "Il numero 1 è uguale al numero 2", quindi la funzione NOT 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.