xls in csv umwandeln und per Mail versenden
Schritt-für-Schritt-Anleitung
- Excel-Datei öffnen: Öffne die Excel-Datei, die du in eine CSV-Datei umwandeln möchtest.
- Makro erstellen: Öffne den VBA-Editor (ALT + F11) und füge ein neues Modul ein.
- Makro kopieren: Kopiere das folgende Makro in das Modul.
Sub Makro1_CSV_SEND2()
' Makro um eine Excel-Datei in CSV zu konvertieren und per E-Mail zu versenden
ActiveSheet.SaveAs Filename:="C:\Temp\AQ03.csv", _
FileFormat:=xlCSV, CreateBackup:=False, local:=True
ChDir "C:\Temp"
Workbooks.Open Filename:="C:\Temp\AQ03.csv", local:=True
Application.Dialogs(xlDialogSendMail).Show _
"mustername@musterfirma.com", "Musterbetreff"
End Sub
- CSV-Datei speichern: Führe das Makro aus, um die Excel-Datei in eine CSV-Datei zu konvertieren.
- E-Mail versenden: Das Makro versendet die CSV-Datei direkt als E-Mail-Anhang.
Häufige Fehler und Lösungen
Alternative Methoden
Eine alternative Methode zur Umwandlung der Excel-Datei in CSV und zum Versenden per E-Mail ist die Verwendung eines VBA-Skripts, das die Datei manuell öffnet und als Anhang hinzufügt. Hier ein Beispiel:
Sub SendCSV()
Dim OutlookApp As Object
Dim OutlookMail As Object
Dim strDateiname As String
' Speichern der Excel-Datei als CSV
strDateiname = "C:\Temp\AQ03.csv"
ActiveSheet.SaveAs Filename:=strDateiname, FileFormat:=xlCSV, CreateBackup:=False, local:=True
' E-Mail erstellen
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
.To = "mustername@musterfirma.com"
.Subject = "Musterbetreff"
.Body = "Hier ist die CSV-Datei."
.Attachments.Add strDateiname
.Send
End With
MsgBox "E-Mail gesendet."
End Sub
Praktische Beispiele
- Einfache CSV-Konvertierung: Wenn du eine einfache Excel-Tabelle hast, die du in eine CSV-Datei umwandeln möchtest, kannst du das oben genannte Makro verwenden.
- CSV-Datei mit benutzerdefiniertem Trennzeichen: Verwende Andreas' Vorschlag für ein Makro, das dir erlaubt, das Trennzeichen auszuwählen:
Sub SaveCSV()
Dim Bereich As Object, Zeile As Object, Zelle As Object
Dim strTemp As String
Dim strDateiname As String
Dim strTrennzeichen As String
strDateiname = InputBox("Wie soll die CSV-Datei heißen (c:\test.csv)?", "CSV-Export")
strTrennzeichen = InputBox("Welches Trennzeichen soll verwendet werden?", "CSV-Export", ",")
' Export-Logik hier...
End Sub
Tipps für Profis
- CSV-Datei anpassen: Wenn du spezielle Anforderungen an das Format deiner CSV-Datei hast, passe das VBA-Skript entsprechend an.
- Automatisierung: Du kannst die Umwandlung und den E-Mail-Versand automatisieren, indem du das Makro in einen Zeitplan einfügst oder auf bestimmte Ereignisse in Excel reagierst.
- PDF in CSV umwandeln: Wenn du PDF-Dateien in CSV umwandeln möchtest, kannst du spezielle Tools oder Skripte verwenden, um die Umwandlung zu erleichtern.
FAQ: Häufige Fragen
1. Wie kann ich eine xls-Datei in eine csv-Datei umwandeln?
Du kannst die Datei in Excel öffnen und dann die "Speichern unter"-Option wählen, um das Format auf CSV zu ändern.
2. Warum sind die Trennzeichen in meiner CSV-Datei anders als erwartet?
Das liegt oft an den regionalen Einstellungen deines Systems. Achte darauf, die local:=True-Option zu verwenden, um die richtigen Trennzeichen zu sichern.
3. Wie versende ich die CSV-Datei automatisch per E-Mail?
Du kannst dies mit einem VBA-Makro tun, wie in den obigen Beispielen gezeigt. Stelle sicher, dass du Zugriff auf Outlook hast.