Freigeben über


Split-Funktion

Gibt ein nullbasiertes eindimensionales Array mit einer bestimmten Anzahl von Teilzeichenfolgen zurück.

Syntax

Split(expression, [ delimiter, [ limit, [ compare ]]])

Die Syntax der Split-Funktion weist folgende benannte Argumente auf:

Teil Beschreibung
expression Erforderlich. Zeichenfolgenausdruck, der Teilzeichenfolgen und Trennzeichen enthält. Wenn expression ist eine Zeichenfolge der Länge NULL („“) gibt Split ein leeres Array zurück, d. h. ein Array ohne Elemente und Daten.
delimiter Optional. Ein einzelnes Zeichen, mit dem die Grenzen von Teilzeichenfolgen identifiziert werden. Wenn dieses nicht angegeben wird, wird das Leerzeichen ("") als Trennzeichen angenommen. Wenn delimiter eine leere Zeichenfolge ist, wird ein aus einem Element bestehendes Array zurückgegeben, das die gesamte expression-Zeichenfolge enthält.
limit Optional. Die Anzahl der zurückzugebenden Teilzeichenfolgen; -1 gibt an, dass alle Teilzeichenfolgen zurückgegeben werden.
compare Optional. Der numerische Wert, der die Art des Vergleichs beim Auswerten von Teilzeichenfolgen angibt. Im Abschnitt „Einstellungen“ finden Sie entsprechende Werte.

Einstellungen

Das compare-Argument kann die folgenden Werte besitzen:

Konstante Wert Beschreibung
vbUseCompareOption -1 Führt mit der Einstellung der Option Compare-Anweisung einen Vergleich aus.
vbBinaryCompare 0 Führt einen binären Vergleich aus.
vbTextCompare 1 Führt einen Textvergleich aus.
vbDatabaseCompare 2 Nur Microsoft Access. Führt anhand der Informationen in Ihrer Datenbank einen Vergleich aus.

Beispiel

Im folgenden Beispiel wird gezeigt, wie die Teilen Funktion verwendet werden kann.

Dim strFull As String
Dim arrSplitStrings1() As String
Dim arrSplitStrings2() As String
Dim strSingleString1 As String
Dim strSingleString2 As String
Dim strSingleString3 As String
Dim i As Long

strFull = "Dow - Fonseca - Graham - Kopke - Noval - Offley - Sandeman - Taylor - Warre"    ' String that will be used. 

arrSplitStrings1 = Split(strFull, "-")      ' arrSplitStrings1 will be an array from 0 To 8. 
                                            ' arrSplitStrings1(0) = "Dow " and arrSplitStrings1(1) = " Fonesca ". 
                                            ' The delimiter did not include spaces, so the spaces in strFull will be included in the returned array values. 

arrSplitStrings2 = Split(strFull, " - ")    ' arrSplitStrings2 will be an array from 0 To 8. 
                                            ' arrSplitStrings2(0) = "Dow" and arrSplitStrings2(1) = "Fonesca". 
                                            ' The delimiter includes the spaces, so the spaces will not be included in the returned array values. 

'Multiple examples of how to return the value "Kopke" (array position 3). 

strSingleString1 = arrSplitStrings2(3)      ' strSingleString1 = "Kopke". 

strSingleString2 = Split(strFull, " - ")(3) ' strSingleString2 = "Kopke".
                                            ' This syntax can be used if the entire array is not needed, and the position in the returned array for the desired value is known. 

For i = LBound(arrSplitStrings2, 1) To UBound(arrSplitStrings2, 1)
    If InStr(1, arrSplitStrings2(i), "Kopke", vbTextCompare) > 0 Then
        strSingleString3 = arrSplitStrings2(i)
        Exit For
    End If 
Next i

Siehe auch

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.