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

Forumthread: EMail versenden / Empfänger in bestimmten Zellen

EMail versenden / Empfänger in bestimmten Zellen
19.02.2013 13:03:02
Toumas
Hallo zusammen,
ich habe dank des Forums hier schon ein paar Lösungen für meine Probleme gefunden
und muss echt sagen, dass ich von den Vorschlägen, Ideen usw. echt begeistert bin.
Leider bin ich auch, was VBA angeht ein absoluter Anfänger (also verzeiht dann schon mal meine blöden Fragen).
Ich habe folgendes Problem.
In einer Excelliste kommen diverse Namen vor, diese sollten per Click auf einen Button per NetSend informiert werden. Dies habe ich auch dank des Forums lösen können.
Nun kam mein Chef auf die Idee, dass neben dem NetSend Befehl auch eine zusätzliche EMail an die betreffenden Personen versendet werden soll.
Die EMailadressen habe ich per SVerweis aus einer anderen Tabelle nach M9 bis M38 kopiert. Hier soll sich nun das Makro jeweils die Adresse rausziehen und mit dem Betreff "Test" eine EMail versenden.
Wie ich eine einzelne EMail (ohne Verweis auf die Zelle ) versenden kann aus Exel weiß ich ja mittlerweile, aber irgendwie Blicke ich bei den Beiträgen die ich hier finde zum Thema Mail aus Excel nicht durch. Könnt ihr, wenn es möglich ist und euch nicht zu viel Nerven kostet einem VBA-DAU auf die Sprünge helfen ?
Danke im Voraus.
Grüße
Mein Makro zum versenden einer EMail aus Exel :
Sub EmailTest3()
Dim olAPP As Object
Set olAPP = CreateObject("Outlook.Application")
With olAPP.CreateItem(0)
'Empfänger
.Recipients.Add "vorname.nachname@xxxxx.de"
'Betreff
.Subject = "Test-Mail"
'Nachricht
.body = "Das ist eine e-Mail" & Chr(13) & _
"Viele Grüße..." & Chr(13) & Chr(13)
'Lesebestätigung aus
.ReadReceiptRequested = False
.Send
End With
Set olAPP = Nothing
End Sub

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: EMail versenden / Empfänger in bestimmten Zellen
19.02.2013 13:35:47
mumpel
Hallo!
Stichwort "Cells". Z.B.:
Gruß, René

AW: EMail versenden / Empfänger in bestimmten Zellen
19.02.2013 13:43:13
Toumas
Hallo Renè,
danke dir schon mal für den Hinweis und den Tipp.....
ich habe mich vermutlich etwas unklug ausgedrückt, sorry...
Die Option mit den CC und BCC ist ok, aber es soll praktisch für jede Adresse eine neue EMail versendet werden, die Adressen sollen nicht im CC oder BCC landen....
Auch kann es mal vorkommen dass EMail-Adresse in M9 bis M18 stehen, dann in M19 bis M25 nicht und dann wieder in M26 bis M38. Also darf keine EMail versendet werden, wenn das Makro auf eine Zelle trifft in der keine EMailadresse vorhanden ist.

Anzeige
AW: EMail versenden / Empfänger in bestimmten Zellen
19.02.2013 13:49:42
Toumas
Als Beispiel habe ich mal meine NetSend Version (die ich hier gefunden und rauspoiert habe....
Sub NetSend3615ein()
Range("B41:B42").Select
ActiveCell.FormulaR1C1 = "EINGELOGGT   "
Range("B41:B42").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 5296274
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Dim strWertAusE2 As String
Dim strWertAusC2 As String
Dim strCommand As String
' Empfänger
strWertAusE1 = Worksheets("Übersicht Telefonbereitschaft").Range("K9:K9").Value
' Text
strWertAusC2 = Worksheets("Übersicht Telefonbereitschaft").Range("B48:B48").Value
Shell "net send " & strWertAusE1 & " " & strWertAusC2, vbMinimizesNoFocus
End Sub

Anzeige
AW: EMail versenden / Empfänger in bestimmten Zellen
20.02.2013 08:32:17
Toumas
Hallo zusammen,
hat jemand vielleicht noch einen Tipp für mich ?
Ich habe zwar gestern noch etwas im Netz gefunden und versucht es anzupassen, aber das Makro
führt sich dann zwar aus, aber es passiert nichts....
Danke nochmals im Voraus
Toumas
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

E-Mail aus Excel versenden: Empfänger in bestimmten Zellen


Schritt-für-Schritt-Anleitung

Um E-Mails aus Excel zu versenden und dabei die Empfänger aus bestimmten Zellen auszulesen, kannst du folgendes Makro verwenden. Dieses Beispiel geht davon aus, dass die E-Mail-Adressen in den Zellen M9 bis M38 stehen.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.
  3. Füge folgenden Code in das Modul ein:
Sub EmailVersenden()
    Dim olAPP As Object
    Dim olMail As Object
    Dim i As Integer
    Dim empfänger As String

    ' Outlook-Anwendung erstellen
    Set olAPP = CreateObject("Outlook.Application")

    ' Schleife durch die Zellen M9 bis M38
    For i = 9 To 38
        empfänger = Cells(i, 13).Value ' M ist die 13. Spalte

        ' Prüfen, ob die Zelle nicht leer ist
        If empfänger <> "" Then
            Set olMail = olAPP.CreateItem(0)
            With olMail
                .Recipients.Add empfänger
                .Subject = "Test-Mail"
                .Body = "Das ist eine e-Mail" & vbCrLf & "Viele Grüße..."
                .Send
            End With
        End If
    Next i

    ' Objekte freigeben
    Set olMail = Nothing
    Set olAPP = Nothing
End Sub
  1. Schließe den VBA-Editor und kehre zu Excel zurück.
  2. Füge einen Button ein und weise das Makro EmailVersenden zu.

Häufige Fehler und Lösungen

  • Problem: Es wird keine E-Mail versendet.

    • Lösung: Stelle sicher, dass Outlook installiert und konfiguriert ist. Überprüfe auch, ob die E-Mail-Adressen korrekt sind.
  • Problem: Fehlermeldung beim Ausführen des Makros.

    • Lösung: Überprüfe, ob die Zellen M9 bis M38 tatsächlich E-Mail-Adressen enthalten. Leere Zellen sollten ignoriert werden.

Alternative Methoden

Wenn du kein VBA verwenden möchtest, kannst du auch die Funktion HYPERLINK in Excel nutzen, um E-Mail-Adressen zu erstellen. Füge in eine Zelle Folgendes ein:

=HYPERLINK("mailto:" & M9, "E-Mail senden")

Das funktioniert jedoch nur für eine Adresse gleichzeitig und öffnet das E-Mail-Programm, anstatt direkt zu senden.


Praktische Beispiele

Hier ist ein Beispiel für das Senden von E-Mails an mehrere Empfänger:

Sub EmailAnAlle()
    Dim olAPP As Object
    Dim empfänger As String
    Dim i As Integer

    Set olAPP = CreateObject("Outlook.Application")

    For i = 9 To 38
        empfänger = Cells(i, 13).Value
        If empfänger <> "" Then
            Call EmailVersenden(empfänger)
        End If
    Next i

    Set olAPP = Nothing
End Sub

Sub EmailVersenden(empfänger As String)
    Dim olMail As Object
    Set olMail = CreateObject("Outlook.Application").CreateItem(0)
    With olMail
        .Recipients.Add empfänger
        .Subject = "Test-Mail"
        .Body = "Das ist eine e-Mail" & vbCrLf & "Viele Grüße..."
        .Send
    End With
    Set olMail = Nothing
End Sub

Tipps für Profis

  • Automatisierung: Du kannst das Makro mit einem Button verknüpfen, um den Prozess zu automatisieren.
  • Fehlerbehandlung: Implementiere Fehlerbehandlung, um sicherzustellen, dass dein Makro robust ist. Beispiel:
On Error Resume Next
  • E-Mail-Adressen validieren: Überprüfe die E-Mail-Adressen, bevor du sie versendest, um sicherzustellen, dass sie im richtigen Format sind.

FAQ: Häufige Fragen

1. Wie sende ich eine E-Mail an mehrere Empfänger? Du kannst in einer Schleife durch die Zellen iterieren und für jede E-Mail-Adresse eine neue E-Mail erstellen, wie im Beispiel gezeigt.

2. Kann ich E-Mail-Adressen aus Excel kopieren? Ja, du kannst die E-Mail-Adressen direkt in die Zellen M9 bis M38 kopieren. Stelle sicher, dass sie im korrekten Format vorliegen.

3. Was muss ich tun, wenn die E-Mail nicht gesendet wird? Überprüfe die Internetverbindung und stelle sicher, dass Outlook korrekt eingerichtet ist. Achte auch darauf, dass keine Firewall-Einstellungen den Versand blockieren.

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