VBA-Programmierung in Microsoft Excel

Tutorial: Excel-Beispiele

VBA-Begriff: TextToColumns-Methode

Analysiert eine Spalte mit Zellen, die Text enthalten, und gibt das Ergebnis in mehreren Spalten aus.

Syntax

Ausdruck.TextToColumns(Destination, DataType, TextQualifier, ConsecutiveDelimiter, Tab, Semicolon, Comma, Space, Other, OtherChar, FieldInfo, DecimalSeparator, ThousandsSeparator)

Ausdruck   Ein erforderlicher Ausdruck, der ein Range-Objekt zurückgibt.

Destination   Variant optional. Ein Range-Objekt, das angibt, an welcher Stelle Microsoft Excel das Ergebnis ausgeben soll. Ist der Bereich größer als eine einzelne Zelle, so wird die obere linke Zelle verwendet.

DataType   Variant optional. Das Format des Textes, der in Spalten aufgeteilt werden soll. Kann eine der folgenden XlTextParsingType-Konstanten sein: xlDelimited oder xlFixedWidth. Der Standardwert ist xlDelimited.

TextQualifier   Variant optional. Der Textkennzeichner. Kann eine der folgenden XlTextQualifier-Konstanten sein: xlTextQualifierDoubleQuote, xlTextQualifierSingleQuote oder xlTextQualifierNone. Der Standardwert ist xlTextQualifierDoubleQuote.

ConsecutiveDelimiter   Variant optional. True, wenn Microsoft Excel sich wiederholende Trennzeichen als ein Trennzeichen interpretieren soll. Der Standardwert ist False.

Tab   Variant optional. True, wenn DataType den Wert xlDelimited hat und das Tabulatorzeichen als Trennzeichen verwendet wird. Der Standardwert ist False.

Semicolon   Variant optional. True, wenn DataType den Wert xlDelimited hat und das Semikolon als Trennzeichen verwendet wird. Der Standardwert ist False.

Comma   Variant optional. True, wenn DataType den Wert xlDelimited hat und das Komma als Trennzeichen verwendet wird. Der Standardwert ist False.

Space   Variant optional. True, wenn DataType den Wert xlDelimited hat und das Leerzeichen als Trennzeichen verwendet wird. Der Standardwert ist False.

Other   Variant optional. True, wenn DataType den Wert xlDelimited hat und das durch das Argument OtherChar angegebene Zeichen als Trennzeichen verwendet wird. Der Standardwert ist False.

OtherChar   Variant optional (erforderlich wenn Other den Wert True hat). Gibt das Trennzeichen an, wenn Other den Wert True hat. Wenn mehr als ein Zeichen angegeben ist, wird das erste Zeichen der Zeichenfolge verwendet. Die übrigen Zeichen werden ignoriert.

FieldInfo   Variant optional. Eine Matrix, die Analyseinformationen über die Daten in den einzelnen Spalten enthält. Die Analyse hängt davon ab, welchen Wert DataType hat.

Wenn die Daten getrennt sind, ist dieses Argument eine Matrix aus zweielementigen Matrizen. Jede zweielementige Matrix gibt die Umwandlungsoptionen für eine bestimmte Spalte an. Das erste Element ist die Spaltennummer (beginnend mit 1) und das zweite Element ist eine der in der folgenden Tabelle aufgeführten xlColumnDataType-Konstanten, die angeben, wie die Spalte analysiert wird.

Konstante Beschreibung
xlGeneralFormat Allgemein
xlTextFormat Text
xlMDYFormat Datum im Format MTJ
xlDMYFormat Datum im Format TMJ
xlYMDFormat Datum im Format JMT
xlMYDFormat Datum im Format MJT
xlDYMFormat Datum im Format TJM
xlYDMFormat Datum im Format JTM
xlEMDFormat Datum im EMD-Format
xlSkipColumn Spalte überspringen

Sie können xlEMDFormat nur verwenden, wenn die Sprachunterstützung für Taiwan installiert und aktiviert ist. Die xlEMDFormat-Konstante gibt an, dass Kalenderangaben gemäß dem Taiwanesischen Kalender verwendet werden sollen.

Die Spaltenangaben können in beliebiger Reihenfolge erfolgen. Wenn eine Spaltenangabe für eine bestimmte Spalte der Eingabedaten nicht vorhanden ist, wird die Spalte auf der Grundlage der Einstellung Allgemein analysiert. In diesem Beispiel wird die dritte Spalte übersprungen, die erste Spalte wird als Text analysiert und die übrigen Spalten der Quelldaten werden auf der Grundlage der Einstellung Allgemein analysiert.

Array(Array(3, 9), Array(1, 2))

Wenn für die Spalten der Quelldaten eine feste Spaltenbreite festgelegt ist, gibt das erste Element jeder zweiteiligen Matrix die Anfangsposition in der Spalte als eine ganze Zahl an (ausgehend von 0). Das zweite Element der zweiteiligen Matrix gibt die Analyseoption für die Spalte als eine Nummer von 1 bis 9 an, wie oben dargestellt.

Im folgenden Beispiel werden zwei Spalten einer Datei mit fester Spaltenbreite analysiert. In der ersten Spalte wird am Anfang der Zeile begonnen, und es werden die ersten 10 Zeichen berücksichtigt. In der zweiten Spalte ist die Anfangsposition 15; alle Zeichen bis zum Ende der Zeile werden berücksichtigt. Damit die Zeichen zwischen 10 und 15 nicht mitberücksichtigt werden, wird ein "Spalte überspringen-Eintrag" eingefügt.

Array(Array(0, 1), Array(10, 9), Array(15, 1))

DecimalSeparator   String optional. Das Dezimaltrennzeichen, das Microsoft Excel beim Erkennen von Zahlen verwendet. Standardeinstellung ist die Systemeinstellung.

ThousandsSeparator   String optional. Das 1.000er-Trennzeichen, das Excel beim Erkennen von Zahlen verwendet. Standardeinstellung ist die Systemeinstellung.

In der folgenden Tabelle sind die Ergebnisse beim Importieren von Text in Excel für verschiedene Importeinstellungen gezeigt. Die numerischen Ergebnisse werden in der Spalte ganz rechts angezeigt.

Dezimaltrennzeichen des Systems 1.000er-Trennzeichen des Systems Wert für Dezimaltrennzeichen Wert für 1.000er-Trennzeichen Originaltext Zellwert (Datentyp)
Punkt Komma Komma Punkt 123.123,45 123,123.45 (numerisch)
Punkt Komma Komma Komma 123.123,45 123.123,45 (Text)
Komma Punkt Komma Punkt 123,123.45 123,123.45 (numerisch)
Punkt Komma Punkt Komma 123 123.45 123 123.45 (Text)
Punkt Komma Punkt Leerzeichen 123 123.45 123,123.45 (numerisch)