VBA-Split-Funktion (Beispiele) - Wie teile ich Strings in Excel VBA?

Was ist die VBA-Split-Funktion in Excel?

Die Aufteilungsfunktion in VBA ist eine sehr nützliche Zeichenfolgenfunktion, die verwendet wird, um Zeichenfolgen auf der Grundlage eines für die Funktion bereitgestellten Trennzeichens und einer Vergleichsmethode in mehrere Teilzeichenfolgen aufzuteilen. Es gibt auch andere Zeichenfolgenfunktionen, die eine Zeichenfolge in Teilzeichenfolgen konvertieren, aber die Aufteilungsfunktion kann a aufteilen String in mehr als einen Teilstring.

In der normalen Arbeitsblatt-LINKS-Funktion werden MID-Funktionen und RECHTS in Excel als Textfunktionen in Excel verwendet, um den Teil des Satzes zu extrahieren. Zum Beispiel sind das Extrahieren von Vorname, Zweitname und Nachname die häufigsten Szenarien, die wir gesehen haben. In VBA haben wir jedoch die vielseitigere Funktion SPLIT, die ähnliche Aufgaben für Sie erledigt. SPLIT ist eine in Excel VBA integrierte Funktion, die den angegebenen Satz basierend auf dem Trennzeichen aufteilen kann. Wenn Sie beispielsweise die E-Mail-Adresse in verschiedene Teile aufteilen möchten, lautet das gemeinsame Element in der E-Mail-Adresse in allen E-Mail-IDs "@", sodass "@" hier zum Trennzeichen wird.

VBA Split String Funktion

Wie alle anderen Funktionen hat auch split eine eigene Syntax. Nachfolgend sind die Parameter der Excel VBA Split String-Funktion aufgeführt.

  • Wert oder Ausdruck: Dies ist nichts anderes als der tatsächliche Wert, den wir zu teilen versuchen. Wenn Sie beispielsweise Vor- und Nachnamen aufteilen möchten, ist hier der vollständige Name der Wert.
  • (Trennzeichen): Was ist das gemeinsame Element zum Teilen des Werts oder Ausdrucks? In der E-Mail-ID ist "@" das gemeinsame Element, in der Adresse Komma (,) das gemeinsame Element. Wenn Sie dies ignorieren, wird das Leerzeichen als Standardwert betrachtet.
  • (Limit): Wie viele Teilzeichenfolgen Sie aus dem von Ihnen angegebenen Wert oder Ausdruck möchten. Wenn der Wert beispielsweise "Mein Name ist Excel" lautet und Sie 3 als Grenzwert angeben, wird das Ergebnis in drei Zeilen angezeigt, z. B. "Mein", "Name", "Ist Excel".
  • (Vergleichen): Da wir kein Vergleichsargument verwenden, überspringen Sie dieses optionale Argument.

In den nächsten Abschnitten des Artikels werden wir sehen, wie die SPLIT-Funktion in Excel VBA praktisch verwendet wird.

Beispiele für die VBA Split String-Funktion

Nachfolgend finden Sie die praktischen Beispiele für die Split-Funktion in Excel VBA.

Beispiel 1 - Teilen Sie den Satz

Split gibt das Ergebnis im Array zurück, das bei 0 beginnt. Alle Arrays beginnen bei 0 und nicht bei 1.

Angenommen, Sie haben das Wort "Mein Name ist Excel VBA" in Zelle A1.

Jetzt möchten Sie diesen Satz in Teile wie "Mein", "Name", "Ist", "Excel", "VBA" aufteilen. Mit der Excel VBA SPLIT String-Funktion können wir dieses Ergebnis zurückgeben.

Schritt 1: Starten Sie das Makro mit dem Namen.

Code:

Sub Split_Example1 () End Sub Schritt 2: Deklarieren Sie drei Variablen.

Code:

Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String End Sub

Schritt 3: Jetzt weist My Text für die definierte Variable das Wort "Mein Name ist Excel VBA" zu .

Code:

Sub Split_Example1 () Dim MyText als String Dim i als Ganzzahl Dim MyResult () als String MyText = "Mein Name ist Excel VBA" End Sub

Schritt 4: Wenden Sie jetzt für die Variable Mein Ergebnis die Funktion VBA-Split-String an.

Code:

Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String MyText = "Mein Name ist Excel VBA" MyResult = Split (End Sub

Schritt 5: Ausdruck ist unser Textwert. Da wir unseren Textwert bereits der Variablen Mein Text zugewiesen haben, geben Sie dieses Argument hier ein.

Code:

Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String MyText = "Mein Name ist Excel VBA" MyResult = Split (MyText) End Sub

Hinweis: Ignorieren Sie wie bisher alle anderen Parameter.

Schritt 6: Jetzt enthält Mein Ergebnis dieses geteilte Ergebnis. Wie ich bereits in diesem Beitrag erwähnt habe, speichert die Split-Funktion das Ergebnis hier als Array

  • Mein Ergebnis (0) = "Mein"
  • Mein Ergebnis (1) = "Name"
  • Mein Ergebnis (2) = "ist"
  • Mein Ergebnis (3) = "Excel"
  • Mein Ergebnis (4) = "VBA"

Obwohl dieser Code keine Auswirkungen auf den Start der SPLIT-Funktion hat, können wir diesen Code verwenden.

Beispiel 2 - VBA SPLIT String mit UBOUND-Funktion

Um das Ergebnis der SPLIT-Funktion zu speichern, können wir die vba UBOUND-Funktion zusammen mit der SPLIT-Funktion verwenden.

UBOUND gibt die maximale Länge des Arrays zurück. Im obigen Beispiel betrug die maximale Länge des Arrays 5.

Nehmen Sie das gleiche Wort "Mein Name ist Excel VBA". Teilen wir dieses Wort und speichern es ab Zelle A1.

Step 1: Let’s continue from where we left off in the previous example.

Step 2: Now apply FOR NEXT LOOP in VBA from 0 to maximum length of the array i.e. UBOUND.

The reason we started from zero because SPLIT will store the result from zero, not from 1.

Step 3: Now apply VBA CELLS property and store the result.

Code:

Cells(i + 1, 1).Value = MyResult(i)

Step 4: Run this code, we would have split values.

Complete Code:

Sub Split_Example1() Dim MyText As String Dim i As Integer Dim MyResult() As String MyText = "My Name is Excel VBA" MyResult = Split(MyText) For i = 0 To UBound(MyResult) Cells(i + 1, 1).Value = MyResult(i) Next i End Sub

Return Word Count

We can also show the total number of words in the supplied value. Use the below code to show the total number of word counts. Code:

Sub Split_Example2() Dim MyText As String Dim i As Integer Dim MyResult() As String MyText = "My Name is Excel VBA" MyResult = Split(MyText) i = UBound(MyResult()) + 1 MsgBox "Total Words Count is " & i End Sub

Copy and paste the above VBA code and run it, the message box will return the result.

Things to Remember

  • If the delimiter is not supplied SPLIT automatically thinks the delimiter as space.
  • If you want to split except space then you need to specify the delimiter in double-quotes.
  • SPLIT stores the result as array results.
  • UBOUND function returns the maximum length of the array.

Recommended Articles

Dies war eine Anleitung zur VBA-Split-Funktion. Hier haben wir gelernt, wie man die VBA Split String-Funktion in Excel verwendet, zusammen mit einigen praktischen Beispielen und einer herunterladbaren Excel-Vorlage. Im Folgenden finden Sie einige nützliche Excel-Artikel zu VBA -

  • Wie aktiviere ich RegEx in VBA?
  • StrComp-Funktion in Excel VBA
  • VBA WorkBook-Objekt
  • VBA-Schlaffunktion in Excel
  • Erstellen Sie eine Pivot-Tabelle in Excel VBA
  • Do Until Loop in VBA
  • Wählen Sie Zelle in VBA
  • Arbeitsblattfunktion in VBA
  • Index außerhalb des Bereichs

Interessante Beiträge...