VBA : comment utiliser IF NOT (avec exemples)
Vous pouvez utiliser la syntaxe de base suivante pour utiliser la logique IF NOT dans VBA afin de tester si une condition n’est pas remplie :
Sub IfNot()
Dim i As Integer
For i = 2 To 11
If Not Range("B" & i) = "West" Then
Result = "Not West"
Else
Result = "West"
End If
Range("C" & i) = Result
Next i
End Sub
Cet exemple particulier vérifie si chaque cellule de la plage B2:B12 n’est pas égale à « Ouest », puis attribue « Pas Ouest » ou « Ouest » à chaque cellule correspondante dans la plage C2:C12 .
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : Comment utiliser IF NOT dans VBA
Supposons que nous disposions de l’ensemble de données suivant dans Excel qui montre le nom de l’équipe et la division de diverses équipes de basket-ball :
Supposons que nous souhaitions attribuer une valeur « Ouest » ou « Pas Ouest » à chaque cellule de la colonne C selon que chaque équipe appartient ou non à la division Ouest.
Nous pouvons créer la macro suivante pour ce faire :
Sub IfNot()
Dim i As Integer
For i = 2 To 11
If Not Range("B" & i) = "West" Then
Result = "Not West"
Else
Result = "West"
End If
Range("C" & i) = Result
Next i
End Sub
Lorsque nous exécutons cette macro, nous recevons le résultat suivant :
Les valeurs de la colonne C nous indiquent si chaque division de la colonne B est égale ou non à « Ouest ».
Par exemple:
- L’équipe A appartient à « l’Ouest », donc la colonne C affiche « Ouest »
- L’équipe B appartient à « l’Est », donc la colonne C affiche « Pas à l’Ouest »
- L’équipe C appartient à « l’Est », donc la colonne C affiche « Pas à l’Ouest »
- L’équipe D appartient au « Nord », donc la colonne C affiche « Pas à l’Ouest »
Et ainsi de suite.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :
VBA : Comment utiliser IF OR pour tester plusieurs conditions
VBA : Comment utiliser IF AND pour tester plusieurs conditions
VBA : comment vérifier si une chaîne contient une autre chaîne