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.