Excel und Outlook – Daten austauschen und E-Mails automatisieren
Excel-Listen und Outlook lassen sich auf mehreren Wegen verbinden: als Datenquelle für Serienbriefe/-mails, als Import für Kontaktlisten oder – mit etwas VBA – zum vollautomatischen Versand von E-Mails direkt aus einer Excel-Tabelle heraus.
Beispiel: Verteilerliste in Excel
| A | B | C | |
|---|---|---|---|
| 1 | Name | Firma | |
| 2 | Anna Berger | a.berger@beispiel.de | Berger GmbH |
| 3 | Tom Weiß | t.weiss@beispiel.de | Weiß & Co. |
Excel-Liste als Datenquelle für Serienmails nutzen
- Excel-Liste mit Spaltenüberschriften wie oben speichern (als
.xlsx). - In Word: Registerkarte Sendungen → Seriendruck starten → E-Mail-Nachrichten.
- Empfänger auswählen → Vorhandene Liste verwenden → die Excel-Datei auswählen.
- Seriendruckfelder (z. B.
«Name») im Text platzieren, dann Fertig stellen & zusammenführen → E-Mail-Nachrichten senden. Outlook muss dafür als Standard-Mailprogramm eingerichtet und geöffnet sein.
E-Mails direkt aus Excel per VBA versenden
Mit ein paar Zeilen VBA und dem Outlook-Objektmodell verschickst du E-Mails automatisiert, ohne Word als Zwischenschritt:
Sub MailsVersenden()
Dim OutlookApp As Object, Mail As Object, i As Long
Set OutlookApp = CreateObject("Outlook.Application")
For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row
Set Mail = OutlookApp.CreateItem(0)
With Mail
.To = Cells(i, "B").Value
.Subject = "Ihre Unterlagen"
.Body = "Hallo " & Cells(i, "A").Value & "," & vbNewLine & "anbei die gewünschten Unterlagen."
.Send
End With
Next i
End Sub
Der Code liest Zeile für Zeile Name und E-Mail-Adresse aus den Spalten A und B und erstellt für jede Zeile eine neue Outlook-Mail.
Automatisch versendete Massen-Mails ohne Freigabe des Empfängers berühren Datenschutz- und Wettbewerbsrecht (u. a. DSGVO, UWG). Setze .Send für Tests zunächst durch .Display (nur Anzeigen) und prüfe rechtliche Vorgaben, bevor du automatisiert versendest.
Für einzelne Mails ganz ohne VBA reicht die Tabellenfunktion =HYPERLINK("mailto:" & B2 & "?subject=Anfrage";"E-Mail senden") – ein Klick öffnet eine vorausgefüllte Outlook-Nachricht.
Kontakte zwischen Excel und Outlook austauschen
Outlook-Kontakte lassen sich über Datei → Öffnen und Exportieren → Importieren/Exportieren → In Datei exportieren → Kommagetrennte Werte als CSV ausgeben und in Excel öffnen – und umgekehrt eine gepflegte Excel-Liste über denselben Assistenten (Import statt Export) als Outlook-Kontakte einlesen.
Häufige Fehler
- „Ein Programm versucht, in Ihrem Namen eine E-Mail zu senden" – Sicherheitswarnung von Outlook bei automatisiertem Versand; muss manuell bestätigt werden (bzw. über Trust-Center-Richtlinien geregelt).
- Leere Empfängerliste beim Seriendruck – meist fehlt in Excel die Kopfzeile oder es gibt leere Zellen mitten in der Adressspalte.
- Laufzeitfehler „ActiveX kann kein Objekt erstellen" – Outlook ist nicht installiert oder nicht als Standardprogramm konfiguriert.