Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1908to1912
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 Datei importieren und umwandeln

CSV Datei importieren und umwandeln
22.11.2022 15:31:47
Tom
Hallo,
ich bin leider ein VBA Anfänger und stehe vor einer großen Herausforderung (für mich)
Ich muss ein CSV File importieren, bei Kommas sollen die Spalten getrennt werden. "Zu Fuß" gehe ich einfach auf "Aus Text/CSV", wähle die Datei aus und importiere. Es öffnet sich ein Fenster wo ich die Formatierung angeben kann sowie bei welchem Zeichen getrennt werden soll. Dann habe ich die importierte Datei im Excel Dateiformat.
Das ganze brauche ich jetzt aber als Makro und inklusive einer Dateiauswahl. Das Makro soll also nicht immer die gleiche Datei importieren sondern mir die Auswahl lassen.
Zusammengefasst:
1) Makro starten
2)Dateiauswahl anzeigen
3)Ich wähle die Datei
4)Makro wandelt die Datei ins Excel Format um und trennt bei Kommas
5)Die umgewandelten Daten werden in einem NEUEN Tabellenblatt dargestellt.
Ich bekomme entweder die Schritte 1 und 2 hin oder die obigen Schritte ohne Dateiauswahl :/
Wie implementiere ich alle Schritte auf einmal?
Danke schonmal im Voraus :)

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: CSV Datei importieren und umwandeln
22.11.2022 15:57:26
Rudi
Hallo,
teste mal:

Sub CSV_Import()
Dim vROH, arrDaten(), vTMP, i As Long, j As Long
Dim iMAX As Long
Dim sFILE As String
Const cstrDELIM As String = "," 'Trennzeichen
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = False
.InitialFileName = "*.csv"
If .Show = -1 Then
Open .SelectedItems(1) For Input As #1
Do While Not EOF(1)
Line Input #1, vTMP
If Len(vTMP) Then
vROH = vROH & vbCrLf & vTMP
End If
iMAX = Application.Max(iMAX, UBound(Split(vTMP, cstrDELIM)))
Loop
Close #1
vROH = Mid(vROH, 2)
vROH = Split(vROH, vbCrLf)
ReDim arrDaten(UBound(vROH), iMAX)
For i = LBound(vROH) To UBound(vROH)
vTMP = Split(vROH(i), cstrDELIM)
For j = LBound(vTMP) To UBound(vTMP)
arrDaten(i, j) = vTMP(j)
Next
Next
End If
End With
Worksheets.Add.Cells(1, 1).Resize(UBound(arrDaten), UBound(arrDaten, 2)) = arrDaten
End Sub
Gruß
Rudi
Anzeige
AW: CSV Datei importieren und umwandeln
23.11.2022 07:37:22
Tom
Erstmal Danke Rudi!
Der Code funktioniert fast perfekt. Das einzige Problem ist, dass mir nur die erste Spalte angezeigt wird. Es wird also wahrscheinlich beim Komma getrennt, das funktioniert. Dann wird aber nur die erste Spalte ausgegeben.
Kann man das noch anpassen?
Beste Grüße
AW: CSV Datei importieren und umwandeln
23.11.2022 09:29:51
Rudi
dann lad mal eine csv hoch
AW: CSV Datei importieren und umwandeln
23.11.2022 10:07:51
Tom
Kann ich dir die Datei irgendwie anders zukommen lassen? Ich glaube die Seite hier hat ein Problem mit dem Dateiupload, da ich immer auf diese Seite geleitet werde:
https://www.herber.de/cgi-bin/f_upload.de
(Ich glaube das soll so nicht sein)
Viele Grüße
Anzeige
AW: CSV Datei importieren und umwandeln
23.11.2022 10:16:41
Oberschlumpf
fast alle Anderen können hier Dateien uploaden (nur du + einige Andere kriegen das nicht hin)
nein, ich glaube nicht, dass diese Seite ein Upload-Problem hat
lies dir auf der Upload-Seite nur aufmerksam die Bedingungen durch, handel danach, dann wirst auch du das mit Upload hinbekommen
AW: CSV Datei importieren und umwandeln
23.11.2022 10:21:59
Tom
Die Fehlermeldungsseite hab ich schon gesehen. Auf die komme ich nicht. Ich habe ein mögliches Dateiformat ausgewählt (txt), die Datei ist auch nicht zu groß (190kb) und direkt auf C: gespeichert.
Beim Druck auf "Datei zum Server" lande ich auf der vorher genannten Seite, die wenn man mit der Maus auf die Links hovert nichts mit dem Forum hier zu tun hat.
Ich habe also definitiv alles was im Info Text steht umgesetzt.
Anzeige
AW: CSV Datei importieren und umwandeln
23.11.2022 10:36:24
Oberschlumpf
und trotzdem glaub ich nicht, nein, ich weiß!, dass diese Forums-Seite kein Upload-Problem hat!
Beweis:
siehe nur mal hier...
https://www.herber.de/forum/messages/1908331.html
sowohl Christoph hat es geschafft, eine Bsp-Datei upzuloaden, und auch ich hab es geschafft, seine von mir angepasste Datei ebenso upzuloaden.
die von dir gezeigte Seite, auf die bei deinem Uploadversuch "umgelenkt" wird, kenne ich bei Herber.de (noch) nicht und kann mir auch nicht erklären, wieso du immer da "landest"
Vielleicht stimmt ja mit deinem Computer etwas nicht (nur Ideen)
- lösch mal den Internetcache
- versuch mal alles mit einem anderen Web-Browser
Oder, vllt geht ja das:
pack deine txt-Datei in eine ZIP-Datei und lad dann die ZIP-Datei hier hoch...
Anzeige
AW: CSV Datei importieren und umwandeln
23.11.2022 11:44:41
Tom
Es funktioniert wenn ich es als Zip hochlade, danke!
Die txt hat mich egal in welchem Browser und auch auf 3 PCs immer zu der komischen Seite weitergeleitet. Da es beim Zip funktioniert muss es meiner Meinung nach an der Seite liegen.
Danke dir nochmal!
AW: CSV Datei importieren und umwandeln
23.11.2022 11:57:45
Oberschlumpf
hier deine txt-Datei, extrahiert aus der ZIP-Datei, die du uploaden konntest:
Ha! Du hast recht! :-)
1. Versuch, deine txt-Datei upzuloaden zeigte auch mir diese andere Seite...seltsam, seltsam!
und auch weitere Versuche (Dateiname von txt-Datei geändert) haben keinen Upload-Erfolg!
ok, ich hatte mich geirrt....
hier noch mal ein Versuch - nur 2 Zeilen in deiner txt-Datei:
https://www.herber.de/bbs/user/156356.txt
DAS funktioniert!
(hatte beim Löschen der anderen Datenzeilen festgestellt, dass am Ende deiner Datei mehrere leere Zeilen enthalten sind)
...warte mal...
3. Upload-Versuch deiner vollständigen txt-Datei - ohne diese leeren Zeilen am Ende:
nee, NUR an den leeren Zeilen liegt es nicht - Upload noch nicht erfolgreich
aber nun gut, mit der ZIP-Datei können wir ja unser Glück mal versuchen :-)
Anzeige
AW: CSV Datei importieren und umwandeln
23.11.2022 11:42:25
Tom
https://www.herber.de/bbs/user/156350.zip
In dem Zip Ordner ist die txt Datei (da die CSV ja nicht funktioniert). Die Ursprungsdatei hat 65000 Zeilen, ich hab die meisten rausgelöscht weil sonst die Datei zu groß war.
Viele Grüße
Fehler gefunden
23.11.2022 11:53:24
Rudi
Hallo,
Worksheets.Add.Cells(1, 1).Resize(UBound(arrDaten) + 1, UBound(arrDaten, 2) + 1) = arrDaten
Gruß
Rudi
AW: Fehler gefunden
28.11.2022 13:36:38
Tom
Hey,
ist mir etwas peinlich aber ich habe ja ganz vergessen Danke zu sagen :)
Der Code funktioniert genauso wie ich es mir vorgestellt habe.
In dem Sinne: Danke dir
Viele Grüße
Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige