Come utilizzare if not in vba?
In VBA, quando si utilizza l’ istruzione IF , viene eseguita una riga di codice se la condizione specificata per il test è VERA. Ma quando usi l’operatore NOT con IF, controlla se la condizione specificata non è VERA ed esegue il codice in base a ciò.
È come fare l’istruzione IF opposta, da VERO a FALSO e da FALSO a VERO.
Diciamo che vuoi verificare se A < B e se questa condizione è vera IF restituirà TRUE, giusto? Ma quando usi IF NOT A < B, restituirà FALSE.
Nota: NOT è un operatore logico.
Esempi di utilizzo di VBA IF NOT
Qui vedremo un semplice esempio per capirlo:
Sub myMacro() Dim A As Range, B As Range Set A = Range("A1") Set B = Range("B1") If Not A < B Then MsgBox "A is not greater than B." Else MsgBox "B is not greater than A." End If End Sub
Nel codice sopra, hai utilizzato l’operatore NOT per verificare se B non è maggiore di A.
Se guardi l’istruzione della condizione, puoi capire che la condizione effettiva da testare è se B è maggiore di A, ma poiché abbiamo usato l’istruzione NOT, restituirà FALSE se la condizione è VERA.
Ecco un altro esempio che puoi usare per capirlo.
Sub myMacro() If Not ActiveSheet.Name = Sheets("Sheet1").Name Then Sheets("Sheet1").Activate End If End Sub
Ora in questo codice, hai usato NOT con IF per vedere se il foglio attivo è Sheet1 o meno e, in caso contrario, la riga di codice che abbiamo specificato attiverà Sheet1 .