Fonction InStrRev

Renvoie la position d'une occurrence d'une chaîne dans une autre chaîne à partir de la fin de cette dernière.

Syntaxe

InStrRev(string1, string2[, start[, compare]])

Arguments :

  • string1 : requis. Expression de chaîne dans laquelle la recherche est effectuée.
  • string2 : requis. Expression de chaîne recherchée.
  • start : facultatif. Expression numérique qui définit la position de départ de chaque recherche. Si l'argument est omis, -1 est utilisé, ce qui signifie que la recherche commence à la position du dernier caractère. Si start contient une valeur NULL, une erreur survient.
  • compare : facultatif. Valeur numérique indiquant le type de comparaison à utiliser lors de l'évaluation des sous-chaînes. Si l'argument est omis, une comparaison binaire est effectuée. Pour connaître les valeurs, reportez-vous à la section Paramètres.
  • Paramètres : l'argument compare peut avoir les valeurs suivantes.

    Tableau 11-17 Constantes de comparaison et descriptions

    Constante Valeur Description
    vbBinaryCompare 0 Permet d'effectuer une comparaison binaire
    vbTextCompare 1 Permet d'effectuer une comparaison textuelle

Valeur renvoyée

La fonction InStrRev renvoie les valeurs suivantes :

Tableau 11-18 Valeurs renvoyées par la fonction InStrRev

Si InStrRev renvoie
string1 est de longueur nulle 0
string2 est de longueur nulle start
string2 est introuvable 0
string2 se trouve dans string1 Position à laquelle la correspondance est trouvée
start > Len(string2) 0

Remarques

Les exemples suivants utilisent la fonction InStrRev pour rechercher une chaîne :

Exemple 1 :

Dim SearchString, SearchChar, MyPos
SearchString ="abcdABCD"   ' String to search in.
SearchChar = "a"   ' Search for "a"
MyPos = InstrRev(SearchString, SearchChar)  ' Default Comparison is binary and starting at the last position (Third and Fourth argument is omitted)
'Output: 1

Exemple 2 :

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"   ' String to search in.
SearchChar = "P"   ' Search for "P".
MyPos = InstrRev(SearchString, SearchChar, 8)   ' Comparison is binary by default (last argument is omitted). 
'Output: 0

Exemple 3 :

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP"   ' String to search in.
SearchChar = "P"   ' Search for "P".
MyPos = InstrRev(SearchString, SearchChar, 10, 0)   ' A binary comparison starting at position 10. 
'Output: 9
MyPos = InstrRev(SearchString, SearchChar, -1, 1)   ' A textual comparison starting at the last position.
'Output: 12

Exemple 4 :

Dim SearchString, SearchChar, MyPos
SearchString ="abcdABCD"   ' String to search in.
SearchChar = "a"   ' Search for "a"
MyPos = InstrRev(SearchString, SearchChar, -1, 0)   ' A binary comparison starting at the last position.
'Output: 1
MyPos = InstrRev(SearchString, SearchChar, -1, 1)   ' A textual comparison starting at the last position.
'Output: 5

Remarque :

La syntaxe de la fonction InStrRev est différente de celle de la fonction InStr.