Betrifft: Excel Datei in CSV Datei wandeln mit Extras
von: Sebastian
Sub CSV()
' CSV Makro
Sheets("Rechnungsnummer").Activate
ChDir "J:\"
ActiveWorkbook.SaveAs Filename:= _
"J:\" _
, FileFormat:=xlCSV, CreateBackup:=False
Sheets("Kommandos").Activate
End Sub
Betrifft: AW: Excel Datei in CSV Datei wandeln mit Extras
von: 1712390.html
Geschrieben am: 11.09.2019 08:35:35
Hallo Sebastian,
z.B. so:
Sub CSV()
Dim Pfad As String, Datei As String
Pfad = Sheets("Rechnungsnummer").Range("F3")
Datei = Sheets("Rechnungsnummer").Range("F2")
ActiveWorkbook.SaveAs Filename:=Pfad & Datei, FileFormat:=xlCSV, CreateBackup:=False
Sheets("Kommandos").Activate
End Sub
Betrifft: Crosspost
von: 1712391.html
Betrifft: AW: Crosspost
von: 1712398.html
Geschrieben am: 11.09.2019 09:16:40
Hallo,
Entschuldigung, dass ich in zwei Foren die gleiche Frage gestellt habe. Ich werde das in Zukunft unterlassen und versuchen den anderen Post aus dem anderen Forum zu löschen.
Viele Grüße
Sebastian
Betrifft: AW: Crosspost
von: 1712400.html
Betrifft: AW: Excel Datei in CSV Datei wandeln mit Extras
von: 1712416.html
Geschrieben am: 11.09.2019 10:33:50
Hallo Torsten,
vielen, vielen Dank für deine Hilfe! Das sieht schon sehr viele besser aus, als es jemals bei mir aussah.
Jetzt habe ich folgendes Problem:
Wenn ich das Makro ausführe, wird die Datei unter dem richtigen Namen am richtigen Ort abgelegt. Das ist super!
Jedoch speichert er die Datei dann als Typ CSV12345-Datei. Wenn ich dann darauf klicke muss ich auswählen, mit welchem Programm ich die Datei öffnen möchte. Wenn ich dann Excel auswähle, erhalte ich zwar ein Makro, jedoch sind alle Werte in der ersten Spalte.
Wenn ich nach Ausüben des Makros Excel schließe, fragt mich Excel, ob die Änderungen gespeichert werden sollen. Wenn ich "speichern" sage, wird in dem gewünschten Ordner eine zweite CSV Datei erstellt jedoch vom TYP "Excel". Wenn ich diese zweite CSV Datei öffne, erhalte ich auch meine gewünschte CSV Datei in richtigen Format.
Ich hoffe, du konntest meinen Erläuterungen irgendwie nachvollziehen.
Ich möchte praktisch, dass bereits durch das ausüben des Makros, die Datei im richtigen Typ und richtigen Format erstellt wird und nicht erst nachdem ich Excel schließe und sage, dass die Änderungen gespeichert werden sollen.
Lieben Dank für deine Mühen!
Betrifft: AW: Excel Datei in CSV Datei wandeln mit Extras
von: 1712420.html
Betrifft: AW: Excel Datei in CSV Datei wandeln mit Extras
von: 1712425.html
Geschrieben am: 11.09.2019 10:53:04
Hallo das ist komisch, ich versuche es nochmal besser zu zeigen, wie es bei mir aussieht.
Wenn ich das Makro ausführe, sieht es in meinem Ordner so aus:
Name
Rechnungsnummer.CSV12345
Änderungsdatum
11.09.2019 10:21
Typ
CSV1245-Datei
Wenn ich daraufhin die Excel Datei schließe und die Änderungen speichere, kommt folgende Datei zusätzlich in den Ordner. So wie diese möchte ich Sie auch haben.
Name
Rechnungsnummer.CSV12345.csv
Änderungsdatum
11.09.2019 10:28
Typ
Microsoft Excel Comma Separated Value File
Grüße
Sebastian
Betrifft: AW: Excel Datei in CSV Datei wandeln mit Extras
von: 1712434.html
ActiveWorkbook.SaveAs Filename:=Pfad & Datei & ".csv" (...)
Also nur das fett markierte in der Zeile dazwischen schieben.
Betrifft: AW: Excel Datei in CSV Datei wandeln mit Extras
von: 1712442.html
Geschrieben am: 11.09.2019 12:31:22
Hi Pierre,
danke für den tollen Tipp, jetzt speichert er direkt im richtigen Typ ab. Einziges Problem, was ich jetzt noch habe, ist, dass in der CSV Datei alle Werte in der ersten Spalte stehen. Hat dafür vielleicht auch jemand einen Tipp?
Ihr seid echt super!
Danke
Betrifft: AW: Excel Datei in CSV Datei wandeln mit Extras
von: 1712444.html
Sub Dateiname()
Dim Pfad As String, Datei As String
Pfad = Sheets("Rechnungsnummer").Range("AD1")
Datei = Sheets("Rechnungsnummer").Range("F2")
ActiveWorkbook.SaveAs Filename:=Pfad & Datei & ".csv", FileFormat:=xlCSV, CreateBackup:=False
Application.Quit
ActiveWorkbook.Close SaveChanges:=True
End Sub
Betrifft: AW: Excel Datei in CSV Datei wandeln mit Extras
von: 1712445.html
Geschrieben am: 11.09.2019 12:42:07
HI
wenn du per VBA eine CSV-Datei öffnest oder speicherst, werden unabhängig von der Länderversion immer die amerikanischen Formate angewendet und das heißt im Falle einer CSV-Datei, dass das KOMMA das Spaltentrennzeichen ist, während wir hier in Deutschland das SEMiKOLON dafür verwenden.
wenn du jetzt also die per VBA mit Komma gespeicherte Datei normal öffnest, dann versucht Excel die Datei am Semikolon in Spalten aufzuteilen und da es keines findet, kommt alles in die erste Spalte.
die Abhilfe wäre hier, VBA beim Speichern mitzuteilen, dass die Formate der aktuellen Länderversion verwendet werden sollen durch den zusätzlichen Parameter Local:=True
bzw, der Zusatz & ".csv" sollte eigentlich nicht notwendig sein.
dieser sollte automatisch hinzugefügt werden, wenn du FileFormat:=xlcsv verwendest.
die Variable Datei sollte ebenfalls nur den Dateinamen ohne die Dateierweiterung enthalten:
ActiveWorkbook.SaveAs Filename:=Pfad & Datei, FileFormat:=xlCSV, Local:=True
Gruß Daniel
Betrifft: AW: Excel Datei in CSV Datei wandeln mit Extras
von: 1712448.html
Betrifft: Bitteschön / @Daniel ...
von: 1712456.html
Geschrieben am: 11.09.2019 13:31:18
Hallo Sebastian,
schön, dass die Kleinigkeit geholfen hat.
Bei deinem weiteren Problem kann ich dir leider nicht mehr helfen.
@Daniel: Grundsätzlich ist es richtig, mit der Endung.
Ich weiß auch nicht, worin das Problem beim TE liegt. Aber ich denke, das ".csv" noch zusätzlich in den Code einzufügen ist wohl das kleinste Übel, vor allem wenn es danach doch genau so läuft, wie gewünscht.
Ob das jetzt "eigentlich" sinnig ist oder eben überflüssig, wird an der Stelle uninteressant, an der der Code funktioniert.
Gruß Pierre
Betrifft: AW: Bitteschön / @Daniel ...
von: 1712460.html