Gibt einen Wert des Typs Variant (String) zurück, der eine bestimme Zeichenanzahl aus einer Zeichenfolge enthält.
Syntax
Mid(string, start [, length ] )
Die Syntax der Teil-Funktion weist die folgenden Argumente auf:
| Argument | Beschreibung |
|---|---|
| Zeichenfolge | Erforderlich. Zeichenfolgenausdruck, von dem Zeichen zurückgegeben werden. Wenn string Null enthält, wird Null zurückgegeben. |
| Startwert | Erforderlich. Lange. Zeichenposition in der Zeichenfolge , an der der zu belegtde Teil beginnt. Wenn start größer als die Anzahl der Zeichen in der Zeichenfolge ist, gibt Mid eine leere Zeichenfolge ("") zurück. |
| Länge | Optional. Wert des Typs Variant (Long). Anzahl der zurückzugebenden Zeichen. Wenn der Text nicht angegeben wird oder weniger als Längenzeichen im Text enthalten sind (einschließlich des Zeichens am Anfang), werden alle Zeichen von der Anfangsposition bis zum Ende der Zeichenfolge zurückgegeben. |
Hinweise
Verwenden Sie die Funktion Len, um die Anzahl der Zeichen in der Zeichenfolge zu bestimmen.
Hinweis
Verwenden Sie die TeilB-Funktion mit Bytedaten, die in einer Zeichenfolge enthalten sind, wie z. B. in Sprachen mit Doppelbyte-Zeichensätzen. Die Argumente geben anstelle der Anzahl der Zeichen die Anzahl der Bytes an. Beispielcode für die Verwendung von TeilB finden Sie im zweiten Beispiel unter "Beispiel".
Abfragebeispiele
| Ausdruck | Ergebnisse |
|---|---|
| SELECT ProductID, Mid(ProductID,5) AS Expr1 FROM ProductSales; | Gibt die "ProductID" und den Teil von ProductID ab Zeichenposition 5 zurück und zeigt die Ergebnisse in der Spalte Expr1 an. |
| SELECT ProductID, Mid(ProductID,5,4) AS testMid FROM ProductSales; | Gibt die "ProductID" und den Teil der ProductID ab Zeichenposition 5 zurück, der 4 Zeichen enthält, und zeigt die Ergebnisse in der Spalte testMid an. |
VBA-Beispiele
Hinweis
Die folgenden VBA-Beispiele veranschaulichen die Verwendung dieser Funktion in einem vba-Modul (Visual Basic for Applications). Wenn Sie weitere Informationen zum Arbeiten mit VBA wünschen, wählen Sie Entwicklerreferenz in der Dropdownliste neben Suchen aus, und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.
Im ersten Beispiel wird die Teil-Funktion verwendet, um eine angegebene Anzahl von Zeichen aus einer Zeichenfolge zurückzugeben.
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".
Im zweiten Beispiel wird TeilB und eine benutzerdefinierte Funktion (MidMbcs) verwendet, um auch Zeichen aus einer Zeichenfolge zurückzugeben. Der Unterschied besteht darin, dass die Eingabezeichenfolge in ANSI und die Länge in Bytes angegeben ist.
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"