Fonction VBA InStrRev

Connaître l'occurrence d'une chaîne dans une autre chaîne peut être très pratique lorsque vous travaillez avec des données quotidiennes. Évidemment, nous pouvons le faire manuellement en calculant l'occurrence de la chaîne dans une autre chaîne, mais la tâche serait très lourde. Donc, pour le rendre plus facile, nous avons une fonction dans VBA qui est connue comme INSTRREV qui est utilisée pour trouver l'occurrence.

Comme expliqué ci-dessus, INSTRREV dans Excel VBA est utilisé pour rechercher une occurrence d'une chaîne dans une autre chaîne. Cette fonction recherche la première occurrence d'une chaîne dans la chaîne cible et renvoie la valeur. Maintenant, nous devons nous rappeler que, comme il donne l'occurrence de la chaîne, la valeur renvoyée est numérique. De plus, comme il s'agit d'une fonction de comparaison, comme pour les autres fonctions de VBA, il existe trois méthodes de comparaison de base.

Syntaxe d'InStrRev dans Excel VBA

La syntaxe de la fonction VBA InStrRev dans Excel est la suivante:

Maintenant, décomposons la syntaxe et apprenons à ce sujet, String est la chaîne principale d'où nous voulons trouver l'occurrence d'une sous-chaîne, Start est l'occurrence numérique que nous fournissons à la chaîne. Si aucun paramètre de démarrage n'est fourni, la fonction commence à rechercher une chaîne à partir de sa fin. Et comparer est la méthode de comparaison que nous fournissons à la fonction. Il existe trois types de comparaison pour cette fonction:

  1. Pour utiliser l'option Compare qui est (-1). Il est également connu sous le nom de VbUseCompareOption.
  2. Pour utiliser la comparaison binaire qui est (0). Il est également connu sous le nom de VbBinaryCompare.
  3. Pour utiliser Text Compare qui est (1). Il est également connu sous le nom de VbTextCompare.

Encore une fois, si aucune des options de comparaison n'est fournie, la fonction la considère automatiquement comme une comparaison binaire.

Utilisons maintenant cette fonction dans quelques exemples et voyons comment utiliser cette fonction.

Comment utiliser Excel VBA InStrRev?

Essayons maintenant avec quelques exemples sur VBA InStrRev dans Excel.

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

Exemple # 1 - VBA InStrRev

Prenons pour exemple que notre chaîne est "Je suis un bon garçon" et trouvons l'occurrence du caractère "" qui est l'espace.

Étape 1: Maintenant, avant de passer à VBA, activez d'abord VBA puis accédez à la section code dans la section développeur pour cliquer sur Visual Basic.

Étape 2: Une fois que nous entrons dans l'éditeur VB que nous pouvons voir dans la section d'en-tête, il y a une option d'insertion. Insérez un nouveau module à partir de cette option, comme indiqué ci-dessous.

Étape 3: Maintenant, commençons notre sous-procédure dans le module comme indiqué ci-dessous.

Code:

 Sous-échantillon () End Sub 

Étape 4: Déclarez maintenant une variable comme un entier qui contiendra la valeur de sortie de la fonction pour nous.

Code:

 Sub Sample () Dim A As Integer End Sub 

Étape 5: Maintenant, dans la variable, utilisez la fonction INSTRREV pour trouver l'occurrence de «» dans la chaîne «Je suis un bon garçon» comme suit.

Code:

 Sub Sample () Dim A As Integer A = InStrRev ("I am a Good Boy", "") End Sub 

Étape 6: Affichez maintenant la valeur stockée dans la variable A à l'aide de la fonction msgbox.

Code:

 Sous-échantillon () Dim A As Integer A = InStrRev ("I am a Good Boy", "") MsgBox A End Sub 

Étape 7: exécutons le code ci-dessus pour obtenir le résultat suivant.

Nous obtenons le résultat 13 car nous n'avons pas fourni la position de départ à la fonction, elle a donc calculé automatiquement l'occurrence à partir de la fin et donc le résultat. On constate que «» est à la 13e position de la chaîne lorsque nous la recherchons depuis la fin.

Exemple # 2 - VBA InStrRev

Dans l'exemple ci-dessus, nous n'avons fourni aucune position de début à la chaîne. Fournissons cette fois dans cet exemple. Voyons à partir de la deuxième position où le «» apparaît dans la chaîne.

Étape 1: insérez un nouveau module à partir de cette option, comme illustré ci-dessous.

Étape 2: Définissons à nouveau une sous-procédure pour notre deuxième exemple.

Code:

 Sub Sample1 () End Sub 

Étape 3: Déclarez une autre variable entière pour l'exemple.

Code:

 Sub Sample1 () Dim A As Integer End Sub 

Étape 4: Maintenant, dans la variable A, trouvons l'occurrence du «» à partir de la deuxième position en utilisant la fonction INSTRREV comme suit.

Code:

 Sub Sample1 () Dim A As Integer A = InStrRev ("I am a Good Boy", "", 2) End Sub 

Étape 5: Utilisez maintenant la fonction msgbox pour afficher la valeur stockée dans A.

Code:

 Sub Sample1 () Dim A As Integer A = InStrRev ("I am a Good Boy", "", 2) MsgBox A End Sub 

Étape 6: Maintenant, exécutez le code ci-dessus pour découvrir le résultat ci-dessous, comme indiqué ci-dessous,

Nous obtenons 1 comme résultat car nous comptons 2 nous obtenons I et après une position nous obtenons l'occurrence de «».

Exemple # 3 - VBA InStrRev

Dans cet exemple, utilisons les méthodes de comparaison. Nous avons une chaîne «India is the Best» et trouvons la chaîne «E» en utilisant à la fois du texte et des méthodes de comparaison binaires.

Étape 1: Dans le même module 1, écrivez une autre sous-procédure, par exemple 3.

Code:

 Sub Sample2 () End Sub 

Étape 2: Définissons deux variables comme Integer qui contiendront la valeur de l'occurrence de la chaîne E dans la comparaison Text et Binary respectivement.

Code:

 Sub Sample2 () Dim A, B As Integer End Sub 

Étape 3: Dans la variable A, utilisons la fonction INSTRREV avec la comparaison de texte comme suit.

Code:

 Sub Sample2 () Dim A, B As Integer A = InStrRev ("India is the Best", "E",, vbTextCompare) End Sub 

Étape 4: Affichez maintenant la valeur stockée dans A à l'aide de la fonction msgbox.

Code:

 Sub Sample2 () Dim A, B As Integer A = InStrRev ("India is the Best", "E",, vbTextCompare) MsgBox A End Sub 

Étape 5: Dans la variable B, utilisons la comparaison binaire pour la même chaîne comme suit.

Code:

 Sous-échantillon2 () Dim A, B As Integer A = InStrRev ("India is the Best", "E",, vbTextCompare) MsgBox AB = InStrRev ("India is the Best", "E",, vbBinaryCompare) MsgBox B End Sous 

Étape 6: Exécutez le code ci-dessus pour trouver le premier résultat stocké dans la variable A qui est comme suit.

Étape 7: Appuyez sur OK pour voir le résultat stocké dans la variable B.

Nous obtenons 0 comme résultat pour la comparaison binaire car dans notre chaîne «e» n'est pas présent «E». Dans les valeurs binaires, les deux sont différents. Donc, si aucune valeur n'est trouvée dans la chaîne, nous obtenons un résultat égal à 0.

Choses dont il faut se rappeler

  • La valeur renvoyée par cette fonction est numérique.
  • Si la sous-chaîne n'est pas trouvée, la valeur renvoyée est 0.
  • La position de départ est facultative. S'il n'est pas fourni, par défaut, la fonction recherche l'occurrence à la fin de la chaîne.
  • Les méthodes de comparaison sont également facultatives.

Articles recommandés

Ceci est un guide de VBA InStrRev. Nous discutons ici comment utiliser Excel VBA InStrRev avec des exemples pratiques et un modèle Excel téléchargeable. Vous pouvez également consulter nos autres articles suggérés -

  1. Travailler avec VBA Active Cell
  2. Suppression d'une ligne dans VBA
  3. Comment utiliser Excel VBA Transpose?
  4. Comment réparer l'erreur 1004 en utilisant VBA

Catégorie: