Anzeige
Archiv - Navigation
1916to1920
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

TextToColumns Komma macht Ärger

TextToColumns Komma macht Ärger
01.02.2023 11:18:23
Max
Hallo zusammen,
ich habe folgendes Problem beim Konvertieren von Text in Spalten:
Mir liegt ein .csv-Export aus einem ERP-System vor:
16.12.2022;AR-12008548-0022;100914;SWBG Achsträger;VT-Sichtprüfun; 2;St; 0;;.P.....B..;ja; 10,00;Min; 0,00;Min
19.12.2022;AR-12008194-1723; 98945;Seitenklappe, ge;VT-Sichtprüfun; 4;St; 0;;.P....MB..;ja; 16,00;Min; 0,00;Min
Wenn ich klassisch in Excel den Befehl Text in Spalten ausführe, funktioniert alles. Nun möchte ich mittels VBA eine kleine AUtomatisierungslösung bauen wobei das Komma in der zweiten Zeile bewirkt, dass sämtliche Informationen nach dem Komma dieser Zeile verschwinden. Das Ergebnis wäre also:
16.12.2022 AR-12008548-0022 100914 SWBG Achsträger VT-Sichtprüfun 2 S 0 P.....B.. ja 10
19.12.2022 AR-12008194-1723 98945 Seitenklappe
Mein Code sieht wie folgt aus:
Range("A1:A999").TextToColumns _
    Semicolon:=True, _
    Space:=False, _
    Comma:=False, _
    DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, _
    ConsecutiveDelimiter:=True
Was mache ich falsch?

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: TextToColumns Komma macht Ärger
01.02.2023 11:26:46
Daniel
Hi
du hast vergessen, VBA mitzuteilen, dass das Komma das Dezimaltrennzeichen ist.
wenn du Text-In-Spalten von Hand anwendest, geht Excel ohne explizite Anweisung von den deutschen Schreibweisen aus.
wenn du Text-In-Spalten über VBA anwendest, geht Excel ohne explizite Anweisung von den amerikanischen Schreibweisen aus.
dh in VBA muss man die Einstellung für das Dezimalzeichen ausführen.
Damit der Makrorecorder diese Einstellung aufzeichnet, muss du beim Ausführen im Schritt 3 des Assistenten den Button WEITERE... klicken. Dann öffnet sich ein weiteres Fenster, in dem du Dezimalzeichen und Tausendertrennzeichen explizit angeben kannst und wenn du das machst, wird die Einstellung auch aufgezeichnet, so dass du sie in deinen Code übernehmen kannst.
Gruß Daniel
Anzeige
AW: TextToColumns Komma macht Ärger
01.02.2023 11:50:50
Max
Vielen Dank für deine Antwort,
ich habe den Code um die Zeile
DecimalSeparator:="."
Ob das nun die sauberste Lösung ist, weiß ich nicht, aber es scheint zu funktionieren!
Vielen Dank! :-)
AW: TextToColumns Komma macht Ärger
01.02.2023 12:17:17
Max
Ich muss mich korrigieren, es funktioniert doch nicht.
Mein Code sieht jetzt wie folgt aus:
'Aktiviert Tabelle1
Tabelle2.Activate
'Selektiert A1
Range("A1").Select
'Fuegt den kopierten Bereich ein
ActiveSheet.Paste
'Text in Spalten umwandeln
Range("A1:A999").TextToColumns _
Semicolon:=True, _
Space:=False, _
Comma:=False, _
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=True, _
DecimalSeparator:="."
Doch es ist ist weiterhin so, dass sämtliche Informationen der Zeilen ab dem Komma fehlen.
Hat jemand noch einen Tipp für mich?
Anzeige
AW: TextToColumns Komma macht Ärger
01.02.2023 12:31:14
Max
Frage als "noch offen" markiert
AW: TextToColumns Komma macht Ärger
01.02.2023 12:33:12
Daniel
Hi
müsstet du nicht das Komma als Trennzeichen angeben?
Wie kommen denn die CSV-Daten nach Excel?
das Text-To-Columns ist ja erst ein nachgelagerter Prozess, der auf bereits in Excel vorliegende Zellen angewendet wird, aber die CSV-Datei muss ja erstmal geöffnet und nach Excel übertragen werden, und hier dürfte das Eigentliche Problem liegen, da Excel an dieser Stelle auch schon ein Text-In-Spalten durchführen muss.
wenn du die CSV-Datei einfach mit Workbooks.Open öffnest und es sich um einen normale deutsche CSV-Datei handelt, dann sollte es ausreichen, beim Workbooks.Open den Parameter Local:=True mit hinzuzunehmen, dann weiß VBA, dass es in deinem deutschen Excel die deutschen CSV-Schreibweisen anwenden muss und nicht die amerikanischen.
Damit sollte dann deine CSV-Datei korrekt geöffnet werden und eine nachbearbeitung mit Text-in-Spalten überflüssig sein.
wenn man spezielle Einstellungen braucht, kann man Workbooks.OpenText verwenden, das kombiniert dann das Öffnen der Datei mit den Einstellungen, die bei Text-in-Spalten explizit gemacht werden können. Allerdings kann man OpenText nicht von Hand ausführen und aufzeichnen, dh hier muss man in der Hilfe nachlesen wie es parametrisiert wird.
Gruß Daniel
Anzeige
AW: TextToColumns Komma macht Ärger
01.02.2023 13:16:12
Max
Hallo Daniel,
du hattest Recht, da lag das Problem.
Mit dem Parameter Local:=True funktioniert es jetzt einwandfrei! :-)

55 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige