VBA comme opérateur

En VBA, vous pouvez comparer deux chaînes en utilisant le Comme opérateur pour vérifier la correspondance des chaînes. Dans ce tutoriel, vous apprendrez à utiliser cet opérateur avec différents modèles.

Si vous voulez apprendre à comparer des chaînes en VBA, cliquez ici : VBA Compare Strings - StrComp

Si vous souhaitez apprendre à utiliser les opérateurs de comparaison, cliquez ici : Opérateurs de comparaison VBA - Pas égaux à et plus

Utilisation de l'opérateur Like pour comparer deux chaînes

Avec l'opérateur Like, nous pouvons vérifier si une chaîne commence par un texte spécifique, l'inclut, etc. Par défaut, le Comme L'opérateur compare les caractères à l'aide de la méthode Binary. Cela signifie que l'opérateur est sensible à la casse. Si vous voulez le rendre insensible à la casse, vous devez mettre Option Comparer le texte en haut de votre module. En utilisant cette méthode, le Comme L'opérateur considère « S » et « s » comme les mêmes caractères. Dans nos exemples, nous utiliserons la comparaison par défaut, sensible à la casse.

Si la correspondance existe, le Comme L'opérateur renvoie True comme résultat, ou False sinon.

Tout d'abord, nous allons examiner l'exemple simple où nous voulons vérifier si notre variable de chaîne commence par Monsieur. Pour ce faire, vous devez mettre un astérisque (*) à la fin du texte correspondant (Monsieur*). Voici le code :

1234567891011121314 Sous LikeDemo()Dim strName en tant que chaîneDim blnRésultat en tant que booléenstrName = "M. Michael James"Si strName comme "Mr*" AlorsblnRésultat = VraiAutreblnRésultat = FauxFin siFin du sous-marin

Dans cet exemple, nous voulons vérifier si la chaîne strName commence par Monsieur et renvoie True ou False dans la variable blnRésultat.

On fixe d'abord la valeur de strName à M. Michael James:

1 strName = "M. Michael James"

Ensuite, nous utilisons le Comme opérateur dans l'instruction If :

12345 Si strName comme "Mr*" AlorsblnRésultat = VraiAutreblnRésultat = FauxFin si

Comme le strName commence par Monsieur, les blnRésultat renvoie Vrai :

Image 1. Utilisation de l'opérateur Like pour vérifier si la chaîne commence par certains caractères

Utilisation de l'opérateur Like avec différents modèles de correspondance

L'opérateur Like peut vérifier la correspondance de deux chaînes en fonction de modèles différents. Voici la liste des modèles de correspondance possibles :

Code de modèle

Type de correspondance

*

Correspond à 0 ou plusieurs caractères

?

Correspond à un seul caractère

#

Correspond à un seul chiffre

[caractères]

Correspond à un seul caractère d'une liste de caractères

[A-Z]

Correspond à n'importe quel caractère majuscule de l'alphabet

[A-Za-z]

Correspond à n'importe quel caractère de l'alphabet

[!chars]

Correspond à un seul caractère à l'exclusion d'une liste de caractères

Nous pouvons maintenant voir comment utiliser ces modèles dans le code. Voici l'exemple pour plusieurs modèles :

Faire correspondre un seul caractère :

1234567 strText1 = "ABCDE"Si strText1 Comme "AB?DE" AlorsblnRésultat1 = VraiAutreblnRésultat1 = FauxFin si

Faire correspondre un seul chiffre :

1234567 strText2 = "AB7DE"Si strText2 comme "AB#DE" alorsblnRésultat2 = VraiAutreblnRésultat2 = FauxFin si

Correspondance avec n'importe quel caractère majuscule de l'alphabet :

1234567 strText3 = "ABCDE"Si strText3 Comme "AB[A-Z]DE" AlorsblnRésultat3 = VraiAutreblnRésultat3 = FauxFin si

Ne correspondant à aucun caractère majuscule de l'alphabet :

1234567 strText4 = "AB7DE"Si strText4 Comme "AB[!A-Z]DE" AlorsblnRésultat4 = VraiAutreblnRésultat4 = FauxFin si

Faire correspondre n'importe quel caractère de l'alphabet (majuscule ou minuscule) :

1234567 strText5 = "ABcDE"Si strText5 Comme "AB[A-Za-z]DE" AlorsblnRésultat5 = VraiAutreblnRésultat5 = FauxFin si

Lorsque vous exécutez le code, vous pouvez voir que le Comme l'opérateur renvoie True dans blnRésultat variables pour chaque comparaison :

Image 2. Utilisation de l'opérateur Like avec différents modèles de correspondance

wave wave wave wave wave