Aufteilung einer Zeichenkette in ein Array in VBA (3 Möglichkeiten)

  • Teile Das
Hugh West

In diesem Artikel zeige ich Ihnen, wie Sie eine Zeichenkette in ein Array aufteilen können. VBA . Teilen ist eine der wichtigsten und am häufigsten verwendeten Funktionen, die wir in VBA Sie werden lernen, wie man eine Zeichenkette in VBA auf alle erdenklichen Arten und Weisen.

VBA Split-Funktion (Schnellansicht)

=Split(Expression As String, [Delimiter], [Limit As Long=1], [CompareAsVbCompareMethod=vbBinaryCompare])

Download Arbeitsbuch Praxis

Aufteilung einer Zeichenkette in ein Array.xlsm

3 Möglichkeiten zum Aufteilen einer Zeichenfolge in ein Array in VBA

Wir haben eine Schnur in der Hand "Wir haben Visa für die USA, Kanada, Australien und Frankreich beantragt." .

Ich zeige Ihnen, wie Sie diese Zeichenkette in ein Array auf alle möglichen Arten aufteilen können, indem Sie die Funktion teilen von VBA .

1. ein beliebiges Trennzeichen verwenden, um eine Zeichenkette in ein Array in VBA aufzuteilen

Sie können eine beliebige Zeichenkette als Begrenzungszeichen verwenden, um eine Zeichenkette in ein Array in VBA .

Es kann ein Leerzeichen (" ") , a Komma (",") , a Semikolon (":") ein einzelnes Zeichen, eine Zeichenkette oder etwas anderes.

Beispiel 1:

Zerlegen wir die Zeichenkette mit der Komma als Begrenzungszeichen.

Die Codezeile wird sein:

Arr = Split(Text, ",")

Die vollständige VBA-Code sein wird:

VBA-Code:

 Sub Split_String() Text = "Wir haben das Visum für die USA, Kanada, Australien und Frankreich beantragt." Arr = Split(Text, ",") Output = "" For i = 0 To UBound(Arr) Output = Output + vbNewLine + vbNewLine + Arr(i) Next i MsgBox Output End Sub 

Ausgabe:

Es teilt die Zeichenkette in ein Array bestehend aus {"Wir haben ein Visum für die USA", "Kanada", "Australien", "Frankreich"} beantragt.

Beispiel 2:

Sie können auch eine Leerzeichen (" ") als Begrenzungszeichen.

Die Codezeile wird sein:

Arr = Split(Text, " ")

Die vollständige VBA-Code sein wird:

VBA-Code:

 Sub Split_String() Text = "Wir haben das Visum für die USA, Kanada, Australien und Frankreich beantragt." Arr = Split(Text, " ") Output = "" For i = 0 To UBound(Arr) Output = Output + vbNewLine + vbNewLine + Arr(i) Next i MsgBox Output End Sub 

Ausgabe:

Es teilt die Zeichenkette in ein Array bestehend aus {"Wir", "beantragt", "für", "die", "Visum", "von", "USA", "Kanada", "Australien", "Frankreich", }.

Dinge zum Merken:

  • Das Standardbegrenzungszeichen ist ein Leerzeichen (" ") .
  • Das heißt, wenn Sie kein Begrenzungszeichen einfügen, wird ein Raum als Begrenzungszeichen.

Lesen Sie mehr: Zeichenkette in Excel nach Zeichen aufteilen (6 geeignete Methoden)

Ähnliche Lektüre:

  • Text in mehrere Zellen in Excel aufteilen
  • VBA zum Abrufen eindeutiger Werte aus einer Spalte in einem Array in Excel (3 Kriterien)
  • Excel VBA: Filtern mit mehreren Kriterien in einem Array (7 Möglichkeiten)

2. eine Zeichenkette in ein Array mit einer beliebigen Anzahl von Elementen aufteilen

Sie können eine Zeichenkette in ein Array mit einer beliebigen Anzahl von Elementen aufteilen, wenn Sie dies wünschen.

Geben Sie die Anzahl der Artikel als 3. Argument des Funktion teilen .

Beispiel:

Zerlegen wir die Zeichenkette in den ersten 3 Artikel mit einem Raum als Begrenzungszeichen.

Die Codezeile wird sein:

Arr = Split(Text, " ", 3)

Und die VBA-Code sein wird:

VBA-Code:

 Sub Split_String() Text = "Wir haben das Visum für die USA, Kanada, Australien und Frankreich beantragt." Arr = Split(Text, " ", 3) Output = "" For i = 0 To UBound(Arr) Output = Output + vbNewLine + vbNewLine + Arr(i) Next i MsgBox Output End Sub 

Ausgabe:

Es teilt die Zeichenkette in ein Array, das aus dem ersten 3 durch das Begrenzungszeichen getrennte Einträge Raum .

Dinge zum Merken:

  • Das Standardargument ist -1 .
  • Das heißt, wenn Sie das Argument nicht eingeben, wird die Zeichenkette so oft wie möglich aufgespalten.

Lesen Sie mehr: Wie man in Excel eine Zeichenfolge nach Länge aufteilt (8 Möglichkeiten)

3 Groß- und Kleinschreibung beachtende Trennzeichen verwenden, um eine Zeichenfolge und ein Array in VBA aufzuteilen

Die Funktion teilen bietet Ihnen die Möglichkeit, sowohl eine Groß- und Kleinschreibung und Groß- und Kleinschreibung wird nicht berücksichtigt Begrenzungszeichen.

Für eine Groß- und Kleinschreibung wird nicht berücksichtigt Begrenzungszeichen, fügen Sie das 4. Argument als 1.

Und für eine Groß- und Kleinschreibung wird nicht berücksichtigt Begrenzungszeichen, fügen Sie das 4. Argument als 0 .

Beispiel 1: Groß-/Kleinschreibung nicht beachtende Begrenzungszeichen

Betrachten wir in der gegebenen Zeichenfolge den Text "FÜR" als Begrenzungszeichen und 2 als die Gesamtzahl der Elemente des Arrays.

Nun, für eine Groß- und Kleinschreibung wird nicht berücksichtigt Fall wird die Codezeile lauten:

Arr = Split(Text, "FÜR ", 3,1)

Und die vollständige VBA-Code sein wird:

VBA-Code:

 Sub Split_String() Text = "Wir haben das Visum für die USA, Kanada, Australien und Frankreich beantragt." Arr = Split(Text, "FOR", 2, 1) Output = "" For i = 0 To UBound(Arr) Output = Output + vbNewLine + vbNewLine + Arr(i) Next i MsgBox Output End Sub 

Ausgabe:

Da das Begrenzungszeichen Groß- und Kleinschreibung wird nicht berücksichtigt hier, die "FÜR" funktioniert als "für" und teilt die Zeichenkette in ein Array mit zwei Elementen.

Beispiel 2: Groß-/Kleinschreibung beachtende Trennzeichen

Wiederum für eine Groß- und Kleinschreibung Fall wird die Codezeile lauten:

Arr = Split(Text, "FÜR ", 3,0)

Und die vollständige VBA-Code sein wird:

VBA-Code:

 Sub Split_String() Text = "Wir haben das Visum für die USA, Kanada, Australien und Frankreich beantragt." Arr = Split(Text, "FOR", 2, 0) Output = "" For i = 0 To UBound(Arr) Output = Output + vbNewLine + vbNewLine + Arr(i) Next i MsgBox Output End Sub 

Ausgabe:

Da das Begrenzungszeichen Groß- und Kleinschreibung hier, die "FÜR" wird nicht als "für" und es wird die Zeichenkette nicht in ein Array mit zwei Elementen aufteilen.

Lesen Sie mehr: Excel VBA: Duplikate aus einem Array entfernen (2 Beispiele)

Dinge zum Merken:

  • Der Standardwert des Arguments ist 0 .
  • Das heißt, wenn Sie nicht den Wert der 4. Argument, funktioniert es bei einer Groß- und Kleinschreibung übereinstimmen.

Schlussfolgerung

Daher können Sie mit diesen Methoden die Funktion teilen von VBA um eine Zeichenkette in ein Array von Elementen aufzuteilen. Wenn Sie Fragen haben, können Sie uns diese gerne stellen.

Hugh West ist ein äußerst erfahrener Excel-Trainer und -Analyst mit über 10 Jahren Erfahrung in der Branche. Er verfügt über einen Bachelor-Abschluss in Rechnungswesen und Finanzen sowie einen Master-Abschluss in Betriebswirtschaft. Hugh hat eine Leidenschaft für das Unterrichten und hat einen einzigartigen Lehransatz entwickelt, der leicht zu befolgen und zu verstehen ist. Seine Expertenkenntnisse in Excel haben Tausenden von Studenten und Berufstätigen auf der ganzen Welt geholfen, ihre Fähigkeiten zu verbessern und in ihrer Karriere herausragende Leistungen zu erbringen. Über seinen Blog teilt Hugh sein Wissen mit der Welt und bietet kostenlose Excel-Tutorials und Online-Schulungen an, um Einzelpersonen und Unternehmen dabei zu helfen, ihr volles Potenzial auszuschöpfen.