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

Forumthread: Email senden wenn Zelleninhalt

Email senden wenn Zelleninhalt
10.12.2018 15:44:52
Erik
Hallo liebe Excelprofis,
ich habe folgenden Code in meiner Exceltabelle die durch klicken auf einen Button gestartet wird:
Sub Pruefung()
If Range("M1") = "a" Then EMailSenden
End Sub

Nach dieser Überprüfung wird der EMailSenden Code optional gestartet:
Sub EMailSenden()
Dim objOL As Object
Dim objMail As Object
Dim Bezeichnung As String
Dim EMailan As String
Dim strName As String
Set objOL = CreateObject("Outlook.Application")
Set objMail = objOL.CreateItem(0)
EMailan = Sheets("Tabelle1").Range("A1").Value
With objMail
.To = EMailan
.Subject = "Terminvereinbarung - "
.Body = "Sehr geehrter Herr " & Range("B1") _
& vbCrLf & "" _
& vbCrLf & "anbei übersenden wir Ihnen einen Rückgabeantrag mit der Bitte um Genehmigung." _
& vbCrLf & "" _
& vbCrLf & "Mit freundlichen Grüßen" _
& vbCrLf & "" _
.Send
End With
MsgBox ("eMail wurde erfolgreich versendet!")
End Sub
Mein Problem ist, das nicht nur Zelle M1 überprüft werden soll sondern die komplette Spalte M !
Wenn dann in der jeweiligen Zeile unter Spalte M ein "a" soll für jede Zeile eine Mail an die Adresse aus der jeweiligen Zeile Spalte A gesendet werden.
Wie kann ich das bewerkstelligen ?
Vielen Dank vorab
und Gruß
Erik
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Email senden wenn Zelleninhalt
10.12.2018 16:08:55
Bernd
Servus Erik,
versuch es mal so:

Sub Pruefung()
Call EMailSenden
End Sub
und dann im allg. Modul...

Sub EMailSenden()
Dim objOL As Object
Dim objMail As Object
Dim Bezeichnung As String
Dim EMailan As String
Dim strName As String
Dim intLZ As Integer
Dim i As Integer
Set objOL = CreateObject("Outlook.Application")
With Sheets("Tabelle1")
intLZ = .Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To intLZ
If .Cells(i, 13).Value = "a" Then
Set objMail = objOL.CreateItem(0)
EMailan = .Range("A" & i).Value
With objMail
.To = EMailan
.Subject = "Terminvereinbarung - "
.Body = "Sehr geehrter Herr " & Range("B" & i) _
& vbCrLf & "" _
& vbCrLf & "anbei übersenden wir Ihnen einen Rückgabeantrag mit der Bitte um  _
Genehmigung." _
& vbCrLf & "" _
& vbCrLf & "Mit freundlichen Grüßen" _
& vbCrLf & "" _
.Display
'    .Send
End With
End If
Next i
End With
MsgBox ("eMails wurde erfolgreich versendet!")
End Sub
Grüße, Bernd
Anzeige
AW: Email senden wenn Zelleninhalt
10.12.2018 16:25:33
Erik
Hallo Bernd,
seltsamerweise ein Syntax-Fehler in diesem Bereich:
.Body = "Sehr geehrter Herr " & Range("B" & i) _
& vbCrLf & "" _
& vbCrLf & "anbei übersenden wir Ihnen einen Rückgabeantrag mit der Bitte um _
Genehmigung." _
& vbCrLf & "" _
& vbCrLf & "Mit freundlichen Grüßen" _
& vbCrLf & "" _
Gruß
Erik
Anzeige
AW: Email senden wenn Zelleninhalt
10.12.2018 16:42:17
Bernd
Servus Erik,
schmeiss den "_" (Unterstrich) hinter "Bitte um" raus und hole das "Genehmigung." in die gleiche Codezeile zurück...
Grüße, Bernd
AW: Email senden wenn Zelleninhalt
10.12.2018 16:49:25
Erik
Hallo Bernd,
Vielen Dank...
... der Hammer, genau so sollte es laufen!!
DANKESCHÖN
Gruß
Erik
AW: Email senden wenn Zelleninhalt
10.12.2018 17:02:07
Erik
Hallo nochmal Bernd !
ich habe noch eine Bitte:
ich brauche noch einen Eintrag zum Beispiel in Spalte L in die jeweilige Zeile:
"Kundeninfo per Mail am (HEUTE)"
:-)
Gruß
Erik
Anzeige
AW: Email senden wenn Zelleninhalt
11.12.2018 08:43:58
Bernd
Servus Erik,
ungetestet...

Sub EMailSenden()
Dim objOL As Object
Dim objMail As Object
Dim Bezeichnung As String
Dim EMailan As String
Dim strName As String
Dim intLZ As Integer
Dim i As Integer
Set objOL = CreateObject("Outlook.Application")
With Sheets("Tabelle1")
intLZ = .Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To intLZ
If .Cells(i, 13).Value = "a" Then
Set objMail = objOL.CreateItem(0)
EMailan = .Range("A" & i).Value
With objMail
.To = EMailan
.Subject = "Terminvereinbarung - "
.Body = "Sehr geehrter Herr " & Range("B" & i) ...
.Display
'    .Send
End With
                .Cells(i,12).value = Date ' oder auch Now für Datum + Uhrzeit
            End If
Next i
End With
MsgBox ("eMails wurde erfolgreich versendet!")
End Sub
Grüße, Bernd
Anzeige
AW: Email senden wenn Zelleninhalt
11.12.2018 09:07:00
Erik
Hallo Bernd,
TOP funktioniert.
Nochmales vielen Dank
Gruß
Erik
;

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

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