Comment utiliser SI NON en VBA ?
Dans VBA, lorsque vous utilisez l’ instruction IF , elle exécute une ligne de code si la condition que vous avez spécifiée pour tester est TRUE. Mais lorsque vous utilisez l’opérateur NOT avec IF, il vérifie si la condition que vous avez spécifiée n’est pas TRUE et exécute le code en fonction de cela.
C’est comme faire l’instruction IF opposée, TRUE en FALSE et FALSE en TRUE.
Disons que vous voulez tester si A < B, et si cette condition est vraie IF renverra TRUE, n’est-ce pas ? Mais lorsque vous utilisez IF NOT A < B, il retournera FALSE.
Remarque : NOT est un opérateur logique.
Exemples d’utilisation de VBA IF NOT
Voici nous allons voir un exemple simple pour le comprendre :
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
Dans le code ci-dessus, vous avez utilisé l’opérateur NOT pour tester si B n’est pas supérieur à A.
Si vous regardez l’instruction de condition, vous pouvez comprendre que la condition réelle à tester est si B est supérieur à A, mais comme nous avons utilisé l’instruction NOT, elle renverra FALSE si la condition est TRUE.
Voici un autre exemple que vous pouvez utiliser pour le comprendre.
Sub myMacro()
If Not ActiveSheet.Name = Sheets("Sheet1").Name Then
Sheets("Sheet1").Activate
End If
End Sub
Maintenant, dans ce code, vous avez utilisé NOT avec IF pour voir si la feuille active est Sheet1 ou non, et si ce n’est pas le cas, la ligne de code que nous avons spécifiée activera Sheet1 .