
La fonction `InStrRev` en VBA (Visual Basic for Applications) est utilisée pour rechercher la position d’une sous-chaîne dans une chaîne, mais en commençant la recherche à partir de la fin de la chaîne. C’est l’équivalent inverse de la fonction `InStr`.
Voici comment utiliser `InStrRev` :
Syntaxe
InStrRev(StringCheck, StringMatch, [Start], [Compare])
- StringCheck (Obligatoire) : La chaîne dans laquelle vous souhaitez effectuer la recherche.
- StringMatch (Obligatoire) : La sous-chaîne que vous recherchez.
- Start (Optionnel) : La position de départ pour la recherche. La recherche commence à partir du début de la chaîne jusqu’à cette position, mais s’effectue en sens inverse. Si omis, la recherche commence à la fin de la chaîne.
- Compare (Optionnel) : Spécifie le type de comparaison. Utilisez `vbBinaryCompare` pour une comparaison binaire (sensible à la casse et à l’accentuation) ou `vbTextCompare` pour une comparaison textuelle (insensible à la casse).
Exemple d’utilisation
Voici un exemple simple d’utilisation de `InStrRev` dans un script VBA pour rechercher le dernier emplacement d’une sous-chaîne dans une chaîne donnée :
Sub ExempleInStrRev()
Dim texte As String
Dim sousChaine As String
Dim position As Integer
texte = "Ceci est un exemple d'utilisation de InStrRev"
sousChaine = "exemple"
' Recherche la dernière occurrence de "exemple" dans la chaîne
position = InStrRev(texte, sousChaine, , vbTextCompare)
If position > 0 Then
MsgBox "La dernière occurrence de '" & sousChaine & "' se trouve à la position : " & position
Else
MsgBox "'" & sousChaine & "' n'a pas été trouvé dans la chaîne."
End If
End Sub
Explications
- Dans cet exemple, nous avons cherché la dernière occurrence du mot “exemple” dans une chaîne.
- Nous avons utilisé `vbTextCompare` pour que la recherche ne soit pas sensible à la casse.
- La valeur retournée par `InStrRev` est la position de la première lettre de la dernière occurrence de la sous-chaîne. Si la sous-chaîne n’est pas trouvée, elle retourne 0.
Cette fonction est particulièrement utile lorsque vous devez identifier la dernière apparition d’une chaîne spécifique, comme un suffixe de fichier dans un chemin, et cela peut être crucial dans des tâches d’analyse ou de manipulation de texte.