Gibt einen Wert des Typs Variant (String) zurück, der eine bestimme Zeichenanzahl aus einer Zeichenfolge enthält.
Syntax
Teil( Zeichenfolge; Startwert [, Länge ])
Die Syntax der Teil-Funktion weist die folgenden Argumente auf:
Argument |
Beschreibung |
Zeichenfolge |
Erforderlich. Zeichenfolgenausdruck, aus dem Zeichen zurückgegeben werden. Enthält die Zeichenfolge den Wert NULL, 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. Wird kein Wert angegeben oder enthält der Text weniger Zeichen als für die Länge angegeben (einschließlich des Zeichens als Startwert), werden alle Zeichen von der Position des Startwerts bis zum Ende der Zeichenfolge zurückgegeben. |
Hinweise
Um die Anzahl von Zeichen in Zeichenfolge zu ermitteln, verwenden Sie die Länge-Funktion.
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 Beispiele zeigen 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"