Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

E-Mail aus Excel mit Bezug aus einer Zelle

Forumthread: E-Mail aus Excel mit Bezug aus einer Zelle

E-Mail aus Excel mit Bezug aus einer Zelle
29.11.2023 13:01:27
Minke1975
Ich habe folgenden Code, jetzt möchte ich aber wenn in einer der Zellen"E9,E16,E23" der Wert überschritten ist, eine E-Mail verschicken, in der zusätzlich der Text aus Zelle "B9,B16, oder B23" mit gesendet wird.

Dim xRg As Range
'Update by Extendoffice 2018/3/7
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Cells.Count > 1 Then Exit Sub
Set xRg = Intersect(Range("E9;E16;E23"), Target)
If xRg Is Nothing Then Exit Sub
If IsNumeric(Target.Value) And Target.Value > 80 Then
Call Mail_small_Text_Outlook
End If
End Sub
Sub Mail_small_Text_Outlook()
Dim xOutApp As Object
Dim xOutMail As Object
Dim xMailBody As String
Set xOutApp = CreateObject("Outlook.Application")
Set xOutMail = xOutApp.CreateItem(0)
xMailBody = "Hi there" & vbNewLine & vbNewLine & _
"This is line 1" & vbNewLine & _
"This is line 2"
On Error Resume Next
With xOutMail
.To = "Mail"
.CC = ""
.BCC = ""
.Subject = "Termingefährdung"
.Body = "Text aus B9,B16,B23" + Termin ist gefährdet"
.Send
End With
On Error GoTo 0
Set xOutMail = Nothing
Set xOutApp = Nothing
End Sub

Kann mir da eventuell jemand helfen?

Gruß
Michael
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: E-Mail aus Excel mit Bezug aus einer Zelle
29.11.2023 17:53:25
Yal
Hallo Michael,

versuche damit
Private Sub Worksheet_Change(ByVal Target As Range)

On Error Resume Next
If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Range("E9;E16;E23"), Target) Is Nothing Then
If IsNumeric(Target.Value) And Target.Value > 80 Then Mail_small_Text_Outlook
End If
End Sub

Sub Mail_small_Text_Outlook()
Dim xOutApp As Object
Dim xMailBody As String

xMailBody = "Hi there" & vbNewLine & vbNewLine _
& "This is line 1" & vbNewLine _
& Me.Range("B9").Value & " " _
& Me.Range("B16").Value & " " _
& Me.Range("B23").Value & " " _
& "Termin ist gefährdet"

Set xOutApp = CreateObject("Outlook.Application")
On Error Resume Next
With xOutApp.CreateItem(0)
.To = "Mail"
.Subject = "Termingefährdung"
.Body = xMailBody
.Send
End With
On Error GoTo 0
Set xOutApp = Nothing
End Sub


VG
Yal
Anzeige
AW: E-Mail aus Excel mit Bezug aus einer Zelle
30.11.2023 06:47:11
Minke1975
Danke Yal,
es funktioniert soweit, allerdings soll er als Zusatz Text immer nur eine Zelle anzeigen, entweder B9, B16 oder B23. Im Moment schickt es dann eine Mail über alle drei Zellen.

Gruß
Michael
AW: E-Mail aus Excel mit Bezug aus einer Zelle
30.11.2023 12:38:20
Yal
Hallo Michael,

Gedankenlesen wäre toll. Bis es soweit ist, ist jede guter Rat auf deine Mitwirkung angewiesen.
VBA ist ja keine Chinesisch, man kann es lesen. Wenn man es auch noch "deutsch" und laut spricht: "in der Variable xMailBody wird eine Zeichenkette abgelegt, die sich aus ... und ... und ... zusammensetzt", dann kommt man schnell auf was angepasst werden muss. Des Erfolgserlebnisses wegen ist es allemal wert zu probieren.

VG
Yal
Anzeige
;

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

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