#VBA #Array #Split

Wie knackt man eine Textwurst? Zum Beispiel diese: „a b c d e f g“ – ich hätte gerne mundgerechte Häppchen, immer bis zum nächsten Leerzeichen.
Eine einfache Methode gibt’s mit VBA:

Public Sub ArrayBsp()
Dim TextVar As Variant     ‚TextVar ist mal Variant, damit kann noch viel daraus werden
Dim I As Long                    ‚I brauchen wir als Laufvariable, um das Ergebnis zu demonstrieren
‚Jetzt wird es ernst:
TextVar = Split(„a b c d e f g“, “ „)     ‚Die Funktion Split teilt eine Textwurst überall dort, wo der als zweites Argument

‚übergebene Begrenzungsstring (hier das Leerzeichen) auftritt. Weitere mögliche Argumente:

‚Maximalanzahl der Retouren, Art des Vergleichs (binär oder Text)

‚Das Ergebnis ist ein eindimensionales Array – das heißt, TextVar verwandelt sich hier in ein Array

For I = UBound(TextVar) To 0 Step -1     ‚Weil TextVar ein Array geworden ist, kann ich mit UBound seinen höchsten Index bestimmen,

‚Untergrenze ist 0
Range(„A“ & (I + 1)) = TextVar(UBound(TextVar) – I)    ‚Ausgabe in eine Excel-Tabelle (zu Demozwecken)
Next I

End Sub