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 Mid contient les arguments suivants :
Argument |
Description |
chaîne |
Obligatoire. expression de chaîne à partir desquelles les caractères sont retournés. Si la chaîne contient Null, null est retourné. |
début |
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 dans la chaîne, mid renvoie une chaîne de longueur nulle (« »). |
longueur |
Facultatif. Variant (Long). Nombre de caractères à renvoyer. En cas d’omission ou s’il y a moins de caractères de longueur dans le texte (y compris le caractère au début), tous les caractères de la position de début à la fin de la chaîne sont retournés. |
Remarques
Pour déterminer le nombre de caractères dans la chaîne, utilisez la fonction Len .
Remarque : Utilisez la fonction MidB avec les données d’octet contenues dans une chaîne, comme dans les langues de jeu 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 obtenir un exemple de code qui utilise MidB, consultez le deuxième exemple de l’exemple de rubrique.
Exemples de requêtes
Expression |
Résultats |
SELECT ProductID, Mid(ProductID,5) AS Expr1 FROM ProductSales ; |
Retourne le « 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 ; |
Retourne le « ProductID » et la partie de ProductID à partir de la position de caractère 5, contenant 4 caractères et affichant les résultats dans la colonne testMid. |
Exemples 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 et 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 renvoyer également des caractères de 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"