eMail aus Excel versenden: Schritt-für-Schritt-Anleitung
Schritt-für-Schritt-Anleitung
Um aus Excel eine eMail mit einem bestimmten Betreff und vorgegebenem Text zu versenden, kannst Du die folgende Schritt-für-Schritt-Anleitung befolgen. Dieses Beispiel ist für Excel mit aktivem Outlook konzipiert.
-
Öffne Excel und aktiviere die Entwicklertools.
- Gehe zu
Datei > Optionen > Menüband anpassen und aktiviere die Entwicklertools.
-
Erstelle ein neues Modul.
- Klicke auf
Entwicklertools > Visual Basic, wähle Einfügen > Modul.
-
Füge den folgenden VBA-Code ein:
Sub SendEmail()
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = "mustermann@example.com"
.Subject = "Hier ist die Datei"
.Body = "Hier ist der Text der eMail."
.Attachments.Add "C:\Pfad\Zur\Deiner\Datei.xlsx"
.Send ' oder .Display, um die eMail zuerst anzusehen
End With
Set OutMail = Nothing
Set OutApp = Nothing
End Sub
-
Bearbeite den Code.
- Ändere die Empfängeradresse, den Betreff, den Text und den Pfad zur Datei nach Deinen Bedürfnissen.
-
Führe das Makro aus.
- Gehe zurück zu Excel, drücke
Alt + F8, wähle SendEmail und klicke auf Ausführen.
Häufige Fehler und Lösungen
-
Fehler: "Outlook 'Unknown' nicht finden"
- Stelle sicher, dass Outlook installiert und richtig konfiguriert ist. Manchmal kann eine falsche Konfiguration zu diesem Fehler führen.
-
Fehler: eMail wird nicht gesendet
- Überprüfe, ob Du die eMail-Adresse korrekt eingegeben hast und ob Outlook geöffnet ist.
-
Fehler: Makro wird geschlossen
- Aktiviere die Makros in Excel unter
Datei > Optionen > Trust Center > Einstellungen für das Trust Center.
Alternative Methoden
Wenn Du keine VBA-Makros verwenden möchtest, kannst Du auch die ActiveWorkbook.SendMail-Methode nutzen. Diese Methode ist einfacher, hat jedoch Einschränkungen in der Anpassung des eMail-Inhalts:
ActiveWorkbook.SendMail "mustermann@example.com", "Hier ist die Datei"
Diese Methode erlaubt es Dir, nur die Adresse und den Betreff zu übergeben. Der eMail-Text kann nicht angepasst werden.
Praktische Beispiele
Hier ist ein praktisches Beispiel, wie Du eine eMail mit einem Anhang versenden kannst:
Sub SendInvoiceEmail()
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = "kunde@example.com"
.Subject = "Ihre Rechnung"
.Body = "Sehr geehrter Kunde," & vbCrLf & "anbei finden Sie Ihre Rechnung."
.Attachments.Add "C:\Rechnungen\Rechnung2023.xlsx"
.Send
End With
Set OutMail = Nothing
Set OutApp = Nothing
End Sub
Tipps für Profis
FAQ: Häufige Fragen
1. Frage
Kann ich mehrere Empfänger in einer eMail hinzufügen?
Antwort: Ja, Du kannst die .To-Eigenschaft mit mehreren Adressen getrennt durch ein Semikolon anpassen, z.B. .To = "adresse1@example.com; adresse2@example.com".
2. Frage
Wie kann ich sicherstellen, dass die eMail im Entwurf bleibt, anstatt sie direkt zu senden?
Antwort: Verwende .Display anstelle von .Send. Dadurch wird die eMail geöffnet, und Du kannst sie vor dem Senden überprüfen.
3. Frage
Was mache ich, wenn ich keine Berechtigung habe, um Makros auszuführen?
Antwort: Wende Dich an Deinen IT-Administrator, um sicherzustellen, dass die Ausführung von Makros in Deinem Excel-Setup erlaubt ist.