VBA comme

VBA comme opérateur

Comme est un opérateur dans VBA et c'est un opérateur de comparaison qui compare une chaîne donnée en tant qu'argument dans un ensemble de chaînes et il correspond au modèle, si le modèle est mis en correspondance, le résultat obtenu est vrai et si le modèle ne correspond pas alors le le résultat obtenu est faux, il s'agit d'un opérateur intégré dans VBA.

L'opérateur «LIKE» est l'opérateur le plus sous-utilisé malgré sa merveilleuse utilisation. Je n'ai pas vu beaucoup de gens qui utilisent pleinement cet opérateur dans leur codage. En fait, je suis l'un d'entre eux qui n'utilise pas cet opérateur assez souvent. L'opérateur «VBA LIKE» nous permet de faire correspondre le modèle de la chaîne à la chaîne complète. En utilisant l'opérateur VBA LIKE, nous pouvons comparer deux chaînes avec le motif donné. Nous pouvons vérifier si la chaîne contient une sous-chaîne dans VBA ou nous pouvons également si la chaîne contient un format spécifique. Si le modèle correspond à la chaîne, l'opérateur VBA LIKE renvoie TRUE ou FALSE.

Lors de la correspondance des chaînes, nous devons utiliser des caractères génériques pour le motif que nous spécifions. Vous trouverez ci-dessous les caractères génériques que nous utilisons dans l'opérateur VBA LIKE.

  • Point d'interrogation (?): Ceci est utilisé pour faire correspondre n'importe quel caractère de la chaîne. Par exemple, si nous avons une chaîne «CAT» et que le modèle est «C? T», l'opérateur VBA LIKE retourne TRUE. Si la chaîne est «CATCH» et que les modèles sont «C? T», l'opérateur VBA LIKE renvoie FALSE.
  • Astérisque (*): Cela correspond à zéro ou plusieurs caractères. Par exemple, si la chaîne est «Good» et le modèle est «G ** d», l'opérateur VBA LIKE renvoie TRUE.
  • Crochets ([]): Cela correspond à n'importe quel caractère unique spécifié entre crochets.
  • [Char-Char]: Cela correspond à n'importe quel caractère unique dans la plage Char-Char.
  • [! Chars]: Cela correspond à n'importe quel caractère ne figurant pas dans la liste.
  • [! Char-Char]: Cela correspond à n'importe quel caractère unique ne faisant pas partie de la plage Char-Char.

Exemples d'opérateur VBA LIKE

Voyons maintenant quelques exemples d'opérateur VBA LIKE.

Vous pouvez télécharger ce modèle VBA comme Excel ici - Modèle VBA comme Excel

Exemple # 1 - Avec point d'interrogation

Code:

 Sub QuestionMark_Example1 () Dim k As String k = "Good" If k Like "Go? D" Then MsgBox "Yes" Else MsgBox "No" End If End Sub 

Dans le code ci-dessus, nous avons fourni la chaîne comme «Good» et le modèle est «Go? D». Puisque le point d'interrogation peut correspondre à un seul caractère, le résultat sera «Oui».

Maintenant, je vais changer la chaîne en "Good Morning".

Code:

 Sous QuestionMark_Example1 () Dim k As String k = "Good Morning" If k Like "Go? D" Then MsgBox "Yes" Else MsgBox "No" End If End Sub 

Dans ce cas, il affichera «Non» car nous avons ajouté un mot de plus à la chaîne, c'est-à-dire Matin. Pour correspondre à un nombre quelconque de caractères, nous devons utiliser l'astérisque.

Exemple # 2 - Avec Asterisk

Code:

 Sous QuestionMark_Example2 () Dim k As String k = "Good Morning" If k Like "* Good *" Then MsgBox "Yes" Else MsgBox "No" End If End Sub 

Dans l'exemple ci-dessus, j'ai ajouté deux astérisques avant et après le caractère «* Good *». Cela correspondra au mot «Good» dans la chaîne «Good Morning» et renvoie «Yes».

Exemple # 3 - Avec crochets []

Code:

 Sous QuestionMark_Example3 () Dim k As String k = "Good Morning" If k Like "* [M] *" Then MsgBox "Yes" Else MsgBox "No" End If End Sub 

Le code ci-dessus correspond à la lettre unique mentionnée dans le crochet «M» et renvoie le résultat comme Oui.

Exemple # 4 - Avec crochets et alphabets [AZ]

Code:

 Sous QuestionMark_Example4 () Dim k As String k = "Good Morning" If k Like "* [AD] *" Then MsgBox "Yes" Else MsgBox "No" End If End Sub 

Dans ce qui précède, j'ai mentionné les caractères à faire correspondre de A à D.

Cela renverra «Non» car il n'y a pas de caractères de A à D dans la chaîne «Good Morning» .

Maintenant, je vais changer le modèle en [AH]

Code:

 Sous QuestionMark_Example4 () Dim k As String k = "Good Morning" If k Like "* [AH] *" Then MsgBox "Yes" Else MsgBox "No" End If End Sub 

Cela renverra "Oui" car de A à H, nous avons un caractère "G" dans la chaîne "Good Morning"

Comme ceci, nous pouvons utiliser l'opérateur VBA «LIKE» pour faire correspondre n'importe quelle chaîne du modèle avec des caractères génériques.