Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

CSV - unterschiedliche Trennung bei Doppelklick und mit VBA

Forumthread: CSV - unterschiedliche Trennung bei Doppelklick und mit VBA

CSV - unterschiedliche Trennung bei Doppelklick und mit VBA
25.03.2025 23:34:21
Dieter
Sorry für eine weitere Frage aber ich habe mein Problem nicht richtig erkannt.

Ich durchforste mittels VBA csv Dateien. Wenn die Bedingungen erfüllt sind soll aus Cells(17, 1) der Inhalt kopiert und auf mehrere Spalten (Trennzeichen ";") aufgeteilt werden. Das funktioniert.

Jetzt ist mir aber aufgefallen das beim öffnen der Datei per Doppelklick die Informationen in Zeile 17 auf mehrere Spalten aufgeteilt sind und kein Trennzeichen vorhanden ist. Wenn ich die Zeile 17 per VBA öffne und die Informationen in meine Ursprungsdatei importieren möchte stehen die Infos gebündelt in Cells(17, 1) aber nur ein kleiner Teil der Informationen.

Wieso gehen beim öffnen mit VBA Daten verloren aber beim öffnen per Maus nicht? Und wieso ändert sich die Darstellung beim öffnen mit VBA in nur eine einzige Zelle und beim öffnen per Maus auf mehrere Spalten? Liegt das an der Art des Imports? Oder liegt es an einer Einstellung?

Grüße
Dieter
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: CSV - unterschiedliche Trennung bei Doppelklick und mit VBA
26.03.2025 00:08:39
Daniel
Hi

Es liegt daran, das in einer deutsche CSV die Spalten mit Semikolons getrennt werden und in einer amerikanischen mit Kommas.
Wenn du jetzt "Deutsch" als Systemeinstellung hast, wird Excel beim öffnen von Hand sich daran orientieren und den Text beim Semikolon in die Spalten trennen.

Führst du die Aktion Workbooks.Open jedoch per VBA durch, dann gelten ohne spezielle Anweisungen immer die amerikanischen Formate ("amerikanisch" ist quasi die Grundeinstellung von VBA) und die Spaltentrennung erfolgt beim Komma.

Um jetzt VBA anzuweisen, die Datei mit den Formaten deiner Ländereinstellung zu öffnen, musst du zusätzlich den Parameter Local:=True zu deinem Workbooks.Open hinzunehmen.
Dieser Parameter ist optional und wird auch vom Recorder nicht aufgezeichnet, daher würd er häufig vergessen, wenn man sich Code mit Hilfe des Recorders zusammenstellt.

Eine andere Möglichkeit ist, die CSV-Datei nicht mit Workbooks.Open sondern mit Workbooks.OpenText zu öffen
Das ist quasi die Kombination aus "Datei öffnen" und "Text in Spalten" hierbei kannst du dann das Trennzeichen fest vorgeben.

Gruß Daniel
Anzeige
Vielen Dank
26.03.2025 09:08:14
Dieter
Vielen Dank Daniel, das hat jetzt vieles erleichtert :-)

Forumthreads zu verwandten Themen

Anzeige