Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1388to1392
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

CSV Import mittel VBA scheitert am Komma

CSV Import mittel VBA scheitert am Komma
22.10.2014 20:28:03
Christian
Hallo zusammen,
bisher habe ich zu fast jedem Problem immer zügig Antworten hier gefunden, heute suche ich allerdings schon eine Weile und bin ratlos:
Ich habe eine CSV Datei, die ich mittels VBA importieren möchte.
Diese Datei hat als Trennzeichen das Semikolon.
In einigen Spalten stehen Beträge in der Form "110,00 €".
Wenn ich die Datei nun importiere, wird das Trennzeichen korrekt erkannt und auf den ersten Blick auch alles korrekt geladen.
Tatsächlich werden jedoch alle Zeichen, die hinter dem ersten Komma stehen, nicht eingelesen, als würde das Komme als Zeilenende interpretiert werden.
Folgende Einstellungen verwende ich derzeit:
For Each f In fso.GetFolder(CSVPFAD).Files
If LCase(Right(f.Name, 3)) = "csv" Then
Workbooks.OpenText Filename:=f.Path
Set wbSource = ActiveWorkbook
On Error Resume Next
Set ws = wbTarget.Worksheets(f.Name)
If Err 0 Then
Set ws = wbTarget.Worksheets.Add
ws.Name = f.Name
ws.Range("A:ZZ").Clear
End If
wbSource.Worksheets(1).Range("A:A").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, ConsecutiveDelimiter:=False, Semicolon:=True, TrailingMinusNumbers:=True ', Local:=True
wbSource.Worksheets(1).Range("A:ZZ").Copy Destination:=ws.Range("A1")
wbSource.Close False
End If
Next
Ich habe versucht, die Eigenschaft Local:=true hinzuzufügen.
Das führte dazu, dass die Leerzeichen als Trennzeichen erkannt werden (statt der Semikolons), was mir auch nicht hilft.
Die Einstellungen im Excel stehen auf Dezimaltrenner = Komma, Tausendertrenner = Punkt.
Diese Einstellungen so einzustellen, dass sich Excel dem Systemstandard bedient, helfen mir leider auch nicht.
Ich verwende Excel 2010.
Ich bin über jeden Ratschlag sehr dankbar!
Viele Grüße,
Christian

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: CSV Import mittel VBA scheitert am Komma
22.10.2014 20:37:45
Daniel
Hi
Probiere es mal mit Workbooks.Open (nicht OpenText) und dann mit dem Zusatz Local:=True
Gruß Daniel

AW: CSV Import mittel VBA scheitert am Komma
22.10.2014 20:55:42
Christian
Hallo Daniel,
das hatte ich auch schon probiert und es verhält sich genau so leider.
Wenn ich in der CSV alle Komma durch Punkte ersetze, dann läuft der Import.
Aber die Orginalfiles haben nun mal das Komma drin... :(
Danke dir dennoch!
Christian

AW: CSV Import mittel VBA scheitert am Komma
22.10.2014 21:01:49
Christian
Kommando zurück, es läuft nun!
Ich hatte die Option Local:=True an die falsche Stelle gehängt.
Danke!!
So läuft es nun:
For Each f In fso.GetFolder(CSVPFAD).Files
If LCase(Right(f.Name, 3)) = "csv" Then
Workbooks.OpenText Filename:=f.Path, Local:=True
Set wbSource = ActiveWorkbook
On Error Resume Next
Set ws = wbTarget.Worksheets(f.Name)
If Err 0 Then
Set ws = wbTarget.Worksheets.Add
ws.Name = f.Name
ws.Range("A:ZZ").Clear
End If
wbSource.Worksheets(1).Range("A:A").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, ConsecutiveDelimiter:=False, Semicolon:=True, TrailingMinusNumbers:=True ', Local:=True
wbSource.Worksheets(1).Range("A:ZZ").Copy Destination:=ws.Range("A1")
wbSource.Close False
End If
Next

Anzeige
AW: CSV Import mittel VBA scheitert am Komma
22.10.2014 22:01:18
Daniel
Hi
Das mit dem TextToColumns solle Excel beim öffnen automatisch ausführen.
Außerdem öffne ich CSV-Dateien normalerweise mit .open und nicht .opentext.
Gruß Daniel

43 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige