Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Mailversand mit Thunderbird

Forumthread: Mailversand mit Thunderbird

Mailversand mit Thunderbird
09.02.2005 11:08:50
Martin
Hallo,
ich suche nach einer Möglichkeit, aus Excel heraus eine Benachrichtigungsmail zu verschicken. Wir verwenden leider als Mail-Client Mozilla Thunderbird und nicht Outlook. Nach einer ausgiebigen Recherche hier im Archiv bin ich soweit gekommen:
Private Declare Function ShellExecute Lib "Shell32.dll" _
Alias "ShellExecuteA" (ByVal hWnd As Long, _
ByVal lpOperation As String, ByVal lpFile As String, _
ByVal lpParameters As String, ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long

Private Sub Mail(eMail As String, Optional Subject As String, Optional Body As String)
Call ShellExecute(0&, "Open", "mailto:" + eMail + "?Subject=" + Subject + "&Body=" + Body, "", "", SW_SHOW)
End Sub

Sub MailVersenden()
Dim eMail As String, Subject As String, Body As String
eMail = "martin.beck@xyz.de"
Subject = "Excel-Daten"
Body = "Mein Text"
Call Mail(eMail, Subject, Body)
End Sub
Dieser Code bereitet die gewünschte Mail vor. Einziges Problem: sie muß dann manuell versendet werden. Diesen Schritt möchte ich noch automatisieren. Geht das und, wenn ja, wie?
Die Tastenkombination, mit der in Thunderbird eine Nachricht verschickt werden kann, ist STRG-ENTER. Ich habe daher an das Ende des Code testweise mal
Call Mail(eMail, Subject, Body)
SendKeys ("{^}{~}")
gesetzt und das Makro aus der Entwicklungsumgebung bzw. aus Excel heraus gestartet. Ohne Erfolg, das Makro schreibt den Text ^~ in den Code bzw. in die Zelle.
Hat jemand eine Idee? Mir würde auch schon die definitive Auskunft helfen, daß es nicht geht.
Danke und Gruß
Martin Beck
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mailversand mit Thunderbird
Martin
Hallo Bernd,
vielen Dank für die Hinweise. Das ganze muß in unserem Firmennetz funktionieren, daher scheidet Möglichkeit 2 aus. Die ersten beiden Links habe ich gecheckt und werde versuchen, daraus etwas zu machen.
Trotzdem wäre ich dankbar, wenn sich nochmal jemand zu dem ursprünglichen Problem äußern könnte.
Gruß
Martin Beck
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Automatisierter Mailversand mit Thunderbird aus Excel


Schritt-für-Schritt-Anleitung

  1. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor in Excel zu öffnen.

  2. Modul erstellen: Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Code einfügen: Füge den folgenden Code in das Modul ein:

    Private Declare Function ShellExecute Lib "Shell32.dll" _
       Alias "ShellExecuteA" (ByVal hWnd As Long, _
       ByVal lpOperation As String, ByVal lpFile As String, _
       ByVal lpParameters As String, ByVal lpDirectory As String, _
       ByVal nShowCmd As Long) As Long
    
    Private Sub Mail(eMail As String, Optional Subject As String, Optional Body As String)
       Call ShellExecute(0, "Open", "mailto:" + eMail + "?Subject=" + Subject + "&Body=" + Body, "", "", SW_SHOW)
    End Sub
    
    Sub MailVersenden()
       Dim eMail As String, Subject As String, Body As String
       eMail = "deine.email@domain.de"
       Subject = "Excel-Daten"
       Body = "Mein Text"
       Call Mail(eMail, Subject, Body)
    End Sub
  4. Automatisierung hinzufügen: Um die E-Mail automatisch zu senden, füge die SendKeys-Funktion hinzu:

    SendKeys ("{^}{~}")
  5. Makro ausführen: Schließe den VBA-Editor und führe das Makro MailVersenden aus.


Häufige Fehler und Lösungen

  • Problem: SendKeys funktioniert nicht: Wenn das Makro den Text ^~ in die Zelle schreibt, kann es an der Anwendung liegen, dass der Fokus nicht auf Thunderbird ist. Stelle sicher, dass Thunderbird aktiv ist, wenn du das Makro ausführst.

  • Problem: E-Mail wird nicht gesendet: Wenn die E-Mail nicht automatisch gesendet wird, überprüfe die Tastenkombination. STRG + ENTER muss in Thunderbird korrekt konfiguriert sein.


Alternative Methoden

  • Verwendung von CDO: Du kannst CDO (Collaboration Data Objects) verwenden, um E-Mails zu versenden. Dies erfordert jedoch zusätzliche Konfigurationen und ist möglicherweise nicht für jedes Firmennetzwerk geeignet.

  • Kommandozeilen-Mailer: Bernd erwähnte die Möglichkeit, einen Kommandozeilen-Mailer zu verwenden. Dies kann eine praktische Lösung sein, wenn du keine VBA-Programmierung nutzen möchtest.


Praktische Beispiele

Hier ist ein Beispiel für den VBA-Code, um eine E-Mail mit einem spezifischen Betreff und Body aus Excel zu versenden:

Sub BeispielMail()
    Dim eMail As String
    Dim Subject As String
    Dim Body As String
    eMail = "beispiel@domain.de"
    Subject = "Test E-Mail"
    Body = "Dies ist eine Testnachricht."
    Call Mail(eMail, Subject, Body)
    SendKeys ("{^}{~}") ' Automatisches Senden
End Sub

Tipps für Profis

  • Terminplaner: Du kannst deine Makros auch mit einem Excel-Planer verknüpfen, um E-Mails zu festgelegten Zeiten zu versenden.

  • Thunderbird-Themen ignorieren: Achte darauf, dass Thunderbird-Themen nicht die Funktionalität beeinträchtigen. Stelle sicher, dass die Einstellungen korrekt sind.

  • Testumgebung: Teste deinen Code in einer sicheren Umgebung, um sicherzustellen, dass alles reibungslos funktioniert, bevor du es in einem produktiven Umfeld einsetzt.


FAQ: Häufige Fragen

1. Kann ich auch Anhänge mit Thunderbird versenden?
Leider unterstützt die mailto-Funktion keine Anhänge. Du müsstest hierfür auf alternative Methoden zurückgreifen.

2. Welche Version von Thunderbird wird benötigt?
Die beschriebenen Methoden sollten in den meisten Versionen von Thunderbird, einschließlich Thunderbird 114, funktionieren.

3. Gibt es eine Möglichkeit, Duplikate in der E-Mail-Adressenliste zu löschen?
Ja, du kannst in Excel die Funktion Entfernen von Duplikaten nutzen, um sicherzustellen, dass jede E-Mail-Adresse nur einmal in deiner Liste auftaucht.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige