CSV mit Anführungszeichen und Komma
Schritt-für-Schritt-Anleitung
Um eine CSV-Datei mit Anführungszeichen und Komma als Trennzeichen in Excel zu exportieren, kannst du das folgende VBA-Makro verwenden. Dieses Makro erstellt eine CSV-Datei, in der jeder Zellwert in doppelten Anführungszeichen gesetzt wird.
Option Explicit
Sub CSV_mit_Anfuehrungszeichen()
Dim wks As Worksheet, Ze As Long, Sp As Long, ZeTmp As String
Dim lCol As Long, lRow As Long, Frf As Long
Dim Anf As String
Const csvExport = "H:\csvExportSpezial.csv" 'Anpassen
Const Trenner As String = "," 'Trenner für Spalten, kann angepasst werden
Anf = Chr$(34)
Frf = FreeFile
Set wks = ThisWorkbook.Worksheets("Tabelle1") 'Anpassen: Register-Name
lCol = wks.Cells(1, Columns.Count).End(xlToLeft).Column
lRow = wks.Cells(Rows.Count, 1).End(xlUp).Row
Open csvExport For Output As #Frf
For Ze = 1 To lRow
For Sp = 1 To lCol
ZeTmp = ZeTmp & Trenner & Anf & CStr(wks.Cells(Ze, Sp).Text) & Anf
Next Sp
ZeTmp = Mid(ZeTmp, 2) 'Letztes Trennzeichen löschen
Print #Frf, ZeTmp
ZeTmp = ""
Next Ze
Close #Frf
End Sub
Häufige Fehler und Lösungen
-
Zuviele Anführungszeichen in Notepad: Wenn du die CSV-Datei in Notepad öffnest und siehst, dass mehr Anführungszeichen vorhanden sind als erwartet, könnte das an der Excel-Regionseinstellung liegen. Teste, ob das Makro in einer anderen Excel-Region korrekt funktioniert.
-
Leere CSV-Dateien: Wenn die generierte CSV-Datei leer ist, überprüfe, ob der Pfad zur Datei korrekt ist und ob du die richtige Tabelle ausgewählt hast, aus der die Daten exportiert werden sollen.
-
Fehler beim Öffnen der Datei: Wenn der Fehler auftritt, dass die Datei bereits geöffnet ist, stelle sicher, dass du die Datei nach dem Schreiben schließt, bevor du sie erneut öffnest oder umbenennst.
Alternative Methoden
Wenn du keine VBA-Makros verwenden möchtest, kannst du die Daten auch manuell in Excel vorbereiten und dann mit der „Speichern unter“-Funktion als CSV exportieren. Achte darauf, dass du die Excel-Optionen so einstellst, dass Anführungszeichen um Textwerte gesetzt werden.
Ein Beispiel für die manuelle Methode:
- Markiere die Zellen, die exportiert werden sollen.
- Füge eine neue Spalte hinzu, in der du die Formel
=""""&A1&""""
verwendest, um Anführungszeichen um den Zellinhalt zu setzen.
- Kopiere die neue Spalte und füge sie als Werte in eine neue Tabelle ein.
- Speichere die Datei als CSV.
Praktische Beispiele
Ein Beispiel für einen erfolgreichen CSV-Export mit Anführungszeichen und Komma:
-
Ursprüngliche Daten in Excel:
- Wert1
- Wert2
- Wert3
- Wert4
- Wert5
-
Exportierte CSV-Datei:
"Wert1","Wert2","Wert3","","Wert5"
Du kannst auch weitere Anpassungen vornehmen, um mit unterschiedlichen Trennzeichen zu arbeiten, indem du die Const Trenner
-Zeile im VBA-Code änderst.
Tipps für Profis
- Experimentiere mit der
Format
-Funktion, um Zeitstempel oder andere benutzerdefinierte Formate in den Dateinamen einzufügen.
- Nutze die
Application.WorksheetFunction
-Methoden, um Daten vor dem Export zu validieren, z.B. mit =LÄNGE(A1)
um sicherzustellen, dass du keine versteckten Zeichen in den Daten hast.
- Wenn du regelmäßig CSV-Dateien exportierst, erwäge die Automatisierung des Prozesses mit einem Timer oder Trigger in VBA.
FAQ: Häufige Fragen
1. Wie kann ich sicherstellen, dass alle Zellwerte in Anführungszeichen gesetzt werden?
Nutze das VBA-Makro, das speziell dafür entworfen wurde, jeden Zellwert in Anführungszeichen zu setzen.
2. Was mache ich, wenn die CSV-Datei nicht die gewünschten Daten enthält?
Überprüfe den Pfad zur Datei und stelle sicher, dass die richtige Arbeitsmappe sowie die richtigen Zellen ausgewählt sind.
3. Ist es möglich, die Regionseinstellungen temporär zu ändern?
Ja, du kannst die Regionseinstellungen über VBA temporär ändern, jedoch erfordert dies zusätzliche Programmierung und eine sorgfältige Handhabung.