Renvoie une donnée de type Variante (Chaîne) contenant un nombre défini de caractères d’une chaîne.
Syntaxe
Mid(string, start [, length ] )
La syntaxe de la fonction moyenne contient les arguments suivants :
| Argument | Description |
|---|---|
| chaîne | Obligatoire. expression de chaîne à partir de laquelle les caractères sont renvoyés. Si la chaîne contient Null, la valeur Null est renvoyée. |
| de démarrage | Obligatoire. Long. Position du caractère dans la chaîne à laquelle commence la partie à prendre. Si start est supérieur au nombre de caractères de la chaîne, Mid retourne une chaîne nulle (« »). |
| Longueur | Facultatif. Variante (longue). Nombre de caractères à renvoyer. En cas d’omission ou s’il y a moins de caractères que la longueur dans le texte (y compris le caractère au début), tous les caractères de la position initiale à la fin de la chaîne sont retournés. |
Remarques
Pour déterminer le nombre de caractères d’une chaîne, utilisez la fonction Len .
Remarque
Utilisez la fonction MidB avec des données octées contenues dans une chaîne, comme dans les langues à jeux de caractères codés sur deux octets. Au lieu de spécifier le nombre de caractères, les arguments spécifient des nombres d’octets. Pour consulter un exemple de code utilisant MidB, consultez le deuxième exemple de l’exemple de rubrique.
Exemples de requête
| Expression | Résultats |
|---|---|
| SELECT ProductID, Mid(ProductID,5) AS Expr1 FROM ProductSales ; | Renvoie « ProductID » et la partie de ProductID à partir de la position de caractère 5 et affiche les résultats dans la colonne Expr1. |
| SELECT ProductID, Mid(ProductID,5,4) AS testMid FROM ProductSales ; | Renvoie « ProductID » et la partie de ProductID à partir de la position 5 du caractère, contenant 4 caractères et affiche les résultats dans la colonne testMid. |
Exemples VBA
Remarque
Les exemples VBA qui suivent 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 développeur dans la liste déroulante en regard de Rechercher , puis entrez un ou plusieurs termes dans la zone de recherche.
Le premier exemple utilise la fonction Mid pour renvoyer un nombre spécifié de caractères à partir d’une chaîne.
Dim MyString, FirstWord, LastWord, MidWords
MyString = "Mid Function Demo" ' Create text string.
FirstWord = Mid(MyString, 1, 3) ' Returns "Mid".
LastWord = Mid(MyString, 14, 4) ' Returns "Demo".
MidWords = Mid(MyString, 5) ' Returns "Function Demo".
Le deuxième exemple utilise MidB et une fonction définie par l’utilisateur (MidMbcs) pour retourner également des caractères à partir d’une chaîne. La différence ici est que la chaîne d’entrée est ANSI et que la longueur est en octets.
Function MidMbcs(ByVal str as String, start, length)
MidMbcs = StrConv(MidB(StrConv(str, vbFromUnicode), _
start, length), vbUnicode)
End Function
Dim MyString
MyString = "AbCdEfG"
' Where "A", "C", "E", and "G" are DBCS and "b", "d",
' and "f" are SBCS.
MyNewString = Mid(MyString, 3, 4)
' Returns ""CdEf"
MyNewString = MidB(MyString, 3, 4)
' Returns ""bC"
MyNewString = MidMbcs(MyString, 3, 4)
' Returns "bCd"