VBA SI NON

SI PAS en VBA

Les fonctions logiques sont utiles pour les calculs qui nécessitent plusieurs conditions ou critères à tester. Dans nos articles précédents, nous avons vu les conditions «VBA IF», «VBA OR» et «VBA AND». Dans cet article, nous aborderons la fonction «VBA IF NOT». Avant d'introduire la fonction VBA IF NOT, laissez-moi d'abord vous montrer la fonction VBA NOT.

Qu'est-ce que NOT Function dans VBA?

«NOT» est l'une des fonctions logiques que nous avons avec Excel et VBA. Toutes les fonctions logiques exigent que des tests logiques soient effectués et retournent TRUE si le test logique est correct, si le test logique n'est pas correct, il renverra FALSE comme résultat.

Mais «VBA NOT» est complètement opposé à l'autre fonction logique. Je dirais que c'est la fonction inverse des fonctions logiques.

La fonction «VBA NOT» renvoie «FALSE» si le test logique est correct et si le test logique n'est pas correct, il renverra «TRUE». Maintenant, regardez la syntaxe de la fonction «VBA NOT».

PAS (test logique)

C'est très simple, nous devons fournir le test logique. La fonction NOT évalue le test et renvoie le résultat.

Exemples de fonction NOT & IF dans VBA?

Vous trouverez ci-dessous des exemples d'utilisation de la fonction IF et NOT dans Excel VBA.

Vous pouvez télécharger ce modèle VBA IF NOT Excel ici - VBA IF NOT Excel Template

Exemple 1

Jetez un œil au code ci-dessous pour un exemple.

Code:

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

Dans le code ci-dessus, j'ai déclaré la variable comme String.

 Dim k comme chaîne 

Ensuite, pour cette variable, j'ai attribué la fonction NOT avec le test logique 100 = 100.

k = pas (100 = 100)

Ensuite, j'ai écrit le code pour afficher le résultat dans la boîte de message VBA. MsgBox k

Maintenant, je vais exécuter le code et voir le résultat.

Nous avons obtenu le résultat «FALSE».

Revenez maintenant au test logique. Nous avons fourni le test logique sous la forme 100 = 100, ce qui est généralement VRAI puisque nous avons donné la fonction NOT, nous avons obtenu le résultat FALSE. Comme je l'ai dit, au début, cela donne des résultats inverses par rapport à d'autres fonctions logiques. Puisque 100 est égal à 100, le résultat est FALSE.

Exemple # 2

Maintenant, regardez un autre exemple avec des nombres différents.

Code:

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

Le code est la même chose que j'ai changé ici, c'est que j'ai changé le test logique de 100 = 100 à 85 = 148.

Maintenant, je vais exécuter le code et voir quel est le résultat.

Cette fois, nous avons obtenu le résultat VRAI. Examinez maintenant le test logique.

k = pas (85 = 148)

Nous savons tous que 85 n'est pas égal au nombre 148. Comme il n'est pas égal, la fonction NOT a renvoyé le résultat comme TRUE.

PAS avec la condition IF:

Dans Excel ou VBA, toutes les conditions logiques ne sont pas complètes sans la condition IF de combinaison. En utilisant IF dans des conditions excellentes, nous pouvons faire beaucoup plus de choses au-delà de TRUE ou FALSE par défaut. Par exemple, dans les exemples ci-dessus, nous avons obtenu les résultats par défaut FALSE & TRUE, au lieu de cela, nous pouvons modifier le résultat dans nos propres mots.

Regardez le code ci-dessous.

Code:

 Sub NOT_Example2 () Dim Number1 As String Dim Number2 As String Number1 = 100 Number2 = 100 If Not (Number1 = Number2) Then MsgBox "Number 1 is not equal to Number 2" Else MsgBox "Number 1 is equal to Number 2" End If End Sub 

J'ai déclaré deux variables.

 Dim Number1 As String & Dim Number2 As String 

Pour ces deux variables, j'ai attribué les nombres à 100 et 100 respectivement.

Numéro1 = 100 & Numéro2 = 100

Ensuite, pour la fonction NOT, j'ai attaché une condition IF pour modifier la valeur par défaut TRUE ou FALSE. Si le résultat de la fonction NOT est TRUE, mon résultat sera le suivant.

MsgBox "Le numéro 1 n'est pas égal au numéro 2"

Si le résultat de la fonction NOT est FALSE, mon résultat est le suivant.

MsgBox "Le numéro 1 est égal au numéro 2"

Maintenant, je vais exécuter le code et voir ce qui se passe.

Nous avons obtenu le résultat comme «Le nombre 1 est égal au nombre 2», donc la fonction NOT a renvoyé le résultat FALSE à la condition IF donc la condition IF a renvoyé ce résultat.

Comme ça, nous pouvons utiliser la condition IF pour faire le test inverse.