Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

E-Mails aus Excel über SMTP-Server

Forumthread: E-Mails aus Excel über SMTP-Server

E-Mails aus Excel über SMTP-Server
08.09.2006 15:31:50
Holger
Hallo zusammen,
gibt es eine Möglichkeit über Excel E-Mails an einen SMTP-Server zu übergeben ?
Das ich E-Mails an Outlook übergebe, habe ich schon hinbekommen. Da kenne ich mich also aus.
Wollte nur jetzt in unserer Firma die E-Mails direkt an den Mail-Server übergeben. (SMTP)
Gruss und schon mal Vielen Dank
Holger Wächter
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: E-Mails aus Excel über SMTP-Server
08.09.2006 18:48:11
Holger
Habe die Antwort inzwischen selber raus gefunden. Hier die Lösung:

Sub Mail_Small_Text_CDO()
Dim iMsg As Object
Dim iConf As Object
Dim strbody As String
Dim Flds As Variant
Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")
iConf.Load -1    ' CDO Source Defaults
Set Flds = iConf.Fields
With Flds
<a href=".Item("http://schemas.microsoft.com/cdo/configuration/sendusing")">.Item("http://schemas.microsoft.com/cdo/configuration/sendusing")</a> = 2
<a href=".Item("http://schemas.microsoft.com/cdo/configuration/smtpserver")">.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver")</a> = "SMTP Server - Adresse einfügen"
<a href=".Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport")">.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport")</a> = 25
.Update
End With
With iMsg
Set .Configuration = iConf
.To = Empfänger@web.de"
.Cc = ""
.Bcc = ""
.From = "Mir selber !!!"
.Subject = "Wichtige Nachricht"
.TextBody = "Es hat geklappt !!!"
.Send
End With
Set iMsg = Nothing
Set iConf = Nothing
End Sub

Einfach SMTP Server eintragen und Empfänger EMail Adresse und die E-Mail wird versandt.
Gruss
Holger Wächter
Anzeige
AW: E-Mails aus Excel über SMTP-Server
08.09.2006 18:50:19
Holger
Ich nochmal:
Dieses
und danach das

jeweils weg lassen. Das kam beim rein kopieren.
Gruss
Holger Wächter
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

E-Mails aus Excel über SMTP-Server versenden


Schritt-für-Schritt-Anleitung

Um E-Mails aus Excel über einen SMTP-Server zu versenden, kannst du den folgenden VBA-Code verwenden. Dieser Code nutzt CDO (Collaboration Data Objects), um E-Mails direkt über den SMTP-Server zu senden.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Füge ein neues Modul ein: Rechtsklick auf "VBAProject (deine Arbeitsmappe)" > Einfügen > Modul.
  3. Kopiere den folgenden Code in das Modul:
Sub Mail_Small_Text_CDO()
    Dim iMsg As Object
    Dim iConf As Object
    Dim strbody As String
    Dim Flds As Variant

    Set iMsg = CreateObject("CDO.Message")
    Set iConf = CreateObject("CDO.Configuration")
    iConf.Load -1    ' CDO Source Defaults
    Set Flds = iConf.Fields

    With Flds
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "SMTP Server - Adresse einfügen"
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
        .Update
    End With

    With iMsg
        Set .Configuration = iConf
        .To = "Empfänger@web.de"
        .Cc = ""
        .Bcc = ""
        .From = "Mir selber !!!"
        .Subject = "Wichtige Nachricht"
        .TextBody = "Es hat geklappt !!!"
        .Send
    End With

    Set iMsg = Nothing
    Set iConf = Nothing
End Sub
  1. Ersetze "SMTP Server - Adresse einfügen" mit der Adresse deines SMTP-Servers und "Empfänger@web.de" mit der E-Mail-Adresse des Empfängers.
  2. Schließe den VBA-Editor und führe das Makro aus.

Häufige Fehler und Lösungen

  • Fehler: E-Mail wird nicht gesendet

    • Überprüfe die SMTP-Server-Adresse und den Port. Stelle sicher, dass die Firewall den SMTP-Verkehr zulässt.
  • Fehler: "Objekt nicht gefunden"

    • Vergewissere dich, dass du die CDO-Bibliothek korrekt referenziert hast. Dies geschieht automatisch, wenn du die CreateObject-Methode verwendest.

Alternative Methoden

Eine weitere Möglichkeit, E-Mails aus Excel zu senden, besteht darin, Outlook über VBA zu steuern. Hier ist ein einfaches Beispiel:

Sub SendEmailOutlook()
    Dim OutlookApp As Object
    Dim MailItem As Object

    Set OutlookApp = CreateObject("Outlook.Application")
    Set MailItem = OutlookApp.CreateItem(0)

    With MailItem
        .To = "Empfänger@web.de"
        .Subject = "Test E-Mail"
        .Body = "Das ist eine Testnachricht."
        .Send
    End With

    Set MailItem = Nothing
    Set OutlookApp = Nothing
End Sub

Diese Methode kann nützlich sein, wenn du bereits Outlook für deine E-Mails verwendest.


Praktische Beispiele

Hier sind einige praktische Anwendungen des VBA SMTP Codes:

  1. Automatisierte Berichterstattung: Versende regelmäßig Berichte an ein Team oder einen Vorgesetzten.
  2. Benachrichtigungen: Informiere dich über wichtige Ereignisse oder Änderungen in einer Excel-Tabelle, indem du automatische E-Mails sendest.

Tipps für Profis

  • Debugging: Verwende Debug.Print in deinem Code, um Werte zu überprüfen, wenn E-Mails nicht gesendet werden.
  • Sicherheit: Stelle sicher, dass E-Mail-Konto und Passwort sicher sind, insbesondere wenn du in einer Unternehmensumgebung arbeitest.
  • Testumgebung: Teste deine E-Mail-Funktionalität in einer sicheren Umgebung, bevor du sie live schaltest.

FAQ: Häufige Fragen

1. Welche Excel-Version benötige ich für CDO?
Du kannst CDO in Excel 2007 und späteren Versionen verwenden. Es ist wichtig, dass Microsoft Outlook installiert ist, wenn du die Outlook-Methode verwendest.

2. Kann ich Anhänge mit dem SMTP-Code senden?
Ja, du kannst Anhänge hinzufügen, indem du die .AddAttachment-Methode des iMsg-Objekts verwendest.

3. Was ist der Unterschied zwischen CDO und Outlook VBA?
CDO ermöglicht das Senden von E-Mails direkt über einen SMTP-Server, während die Outlook-VBA-Methode Outlook zur Verwaltung der E-Mails verwendet.

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