Passer directement au contenu principal

InStr, fonction

Renvoie une donnée de type Variante (Long) spécifiant la position de la première occurrence d’une chaîne dans une autre chaîne.

Voir quelques exemples

Syntaxe

InStr ([début, ] Chaîne1, chaîne2 [, comparaison ] )

La syntaxe de la fonction InStr contient les arguments suivants :

Argument

Description

début

Facultatif. Expression numérique qui définit la position de départ de chaque recherche. Si elle est omise, la recherche commence à la position du premier caractère. Si début contient null, une erreur se produit. L’argument début est obligatoire si comparaison est spécifié.

chaîne1

Obligatoire. Expression de chaîne recherchée.

chaîne2

Obligatoire. Expression de chaîne recherchée.

comparaison

Facultatif. Spécifie le type de comparaison de chaînes. Si comparaison a la valeur Null, une erreur se produit. Si comparer est omis, le paramètre optioncomparer détermine le type de comparaison. Spécifiez un LCID (LocaleID) valide pour utiliser des règles spécifiques aux paramètres régionaux de la comparaison.

Conseil : Dans Access 2010, le générateur d’expressions utilise la fonctionnalité IntelliSense, qui vous permet d’identifier les arguments dont votre expression a besoin. 

Paramètres

Les valeurs de l’argument comparer sont les suivantes :

Constante

Valeur

Description

vbUseCompareOption

-1

Effectue une comparaison à l’aide de la définition de l’instruction option compare .

vbBinaryCompare

0

Effectue une comparaison binaire.

vbTextCompare

1

Effectue une comparaison textuelle.

vbDatabaseCompare

2

Microsoft Office Access 2007 uniquement. Effectue une comparaison basée sur les informations de votre base de données.


Valeur de retour

Si

InStr renvoie

string1 est une longueur nulle

0

chaîne1 est null

Null

string2 est une longueur nulle

début

chaîne2 est null

Null

chaîne2 introuvable

0

string2 est disponible au sein de string1

Position de la correspondance trouvée

Démarrer > chaîne2

0


Remarques

La fonction InStrB est utilisée avec des données d’octets contenus dans une chaîne. Au lieu de renvoyer la position de caractère de la première occurrence d’une chaîne dans une autre chaîne, la fonction InStrB renvoie la position d’octet.

Exemples

Utiliser la fonction InStr dans une expression    Vous pouvez utiliser InStr partout où vous pouvez utiliser des expressions. Par exemple, si vous souhaitez trouver la position de la première période (.) dans un champ qui contient les adresses IP (nommé IPAddress), vous pouvez utiliser InStr pour le Rechercher, comme suit :

InStr (1, [IPAddress], ".")

La fonction InStr examine chaque valeur dans le champ IPAddress et renvoie la position de la première période. Par conséquent, si la première partie de l’adresse IP est 10., la fonction renvoie la valeur 3.

Vous pouvez ensuite utiliser d’autres fonctions, en opérant sur la sortie de la fonction InStr , pour extraire la partie de l’adresse IP qui précède la première période, comme suit :

Gauche ([IPAddress], (InStr (1, [IPAddress], ".") -1))

Dans cet exemple, InStr (1, [IPAddress], ".") renvoie la position de la première période. Soustraire 1 détermine le nombre de caractères qui précèdent la première période (dans ce cas, 2). La fonction gauche extrait alors ce nombre de caractères de la partie gauche du champ IPAddress, en renvoyant la valeur 10.

Utiliser InStr dans du code VBA    

Remarque : Les exemples suivants illustrent l’utilisation de cette fonction dans un module Visual Basic pour applications (VBA). Pour plus d’informations sur l’utilisation de VBA, sélectionnez Référence du développeur dans la liste déroulante en regard de Rechercher , puis entrez une ou plusieurs conditions dans la zone de recherche.

Cet exemple utilise la fonction InStr pour renvoyer la position de la première occurrence d’une chaîne dans une autre chaîne.

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" ' String to search in.
SearchChar = "P" ' Search for "P".
' A textual comparison starting at position 4. Returns 6.
MyPos = Instr(4, SearchString, SearchChar, 1)
' A binary comparison starting at position 1. Returns 9.
MyPos = Instr(1, SearchString, SearchChar, 0)
' Comparison is binary by default
' (last argument is omitted).
MyPos = Instr(SearchString, SearchChar) ' Returns 9.
MyPos = Instr(1, SearchString, "W") ' Returns 0.

Remarque :  Cette page a été traduite automatiquement et peut donc contenir des erreurs grammaticales ou des imprécisions. Notre objectif est de faire en sorte que ce contenu vous soit utile. Pouvez vous nous dire si les informations vous ont été utiles ? Voici l’article en anglais pour référence.

Voir aussi

Fonctions de chaîne et comment les utiliser

Développez vos compétences dans Office
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider