Email aus Excel versende Office 2016

Betrifft: Email aus Excel versende Office 2016
von: Toby...
Geschrieben am: 26.09.2020 14:04:10
Hallo!
Ich habe eine Excel Datei in der per Klick eine Email gesendet wir dmit Betreff und der Datei im Anhang.
Seit meinem Upgrade von Office 2010 auf 2016 hängt sich das Makro immer bei Applications.dialog auf.
Das Makro hat ir damals auch jemand hier i Forum geschrieben.
Hoffe ihr könnt mir erneut helfen:
Dim MailAddreasse
With Sheets("Verteiler")
MailAddreasse = .Range("A1", .Cells(Rows.Count, 1).End(xlUp))
End With
Application.Dialogs(xlDialogSendMail).Show MailAddreasse, Sheets("Tabellen").Range("E2")

Betrifft: AW: Email aus Excel versende Office 2016
von: Nepumuk
Geschrieben am: 26.09.2020 14:22:45
Hallo Toby,
teste mal:
Option Explicit
Public Sub CreateMail()
Dim objOutlook As Object, objMail As Object
Dim strMailAddress As String
With Worksheets("Verteiler")
strMailAddress = .Cells(.Rows.Count, 1).End(xlUp).Text
End With
Set objOutlook = CreateObject(Class:="Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
With objMail
.BodyFormat = 2
.To = strMailAddress
.Subject = "Betreff"
.Body = "Hallo"
Call .Display
End With
Set objMail = Nothing
Set objOutlook = Nothing
End Sub
Gruß
Nepumuk

Betrifft: AW: Email aus Excel versende Office 2016
von: Toby...
Geschrieben am: 26.09.2020 14:49:09
Hallo!
Danke für die schnelle Antwort.
Es öffnet sich zumindest wieder.
Leider wird nur die letzte Email Adresse von 44 übernommen und die aktuelle Datei nicht angehängt.
Kannst du mir da auch weiterhelfen?
Toby...

Betrifft: AW: Email aus Excel versende Office 2016
von: Nepumuk
Geschrieben am: 26.09.2020 15:22:56
Hallo Toby,
so?
Public Sub CreateMail()
Dim objOutlook As Object, objMail As Object
Dim strMailAddress As String
With Worksheets("Verteiler")
strMailAddress = Join(Application.Transpose( _
.Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp)).Value2), ";")
End With
Set objOutlook = CreateObject(Class:="Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
With objMail
.BodyFormat = 2
.To = strMailAddress
.Subject = "Betreff"
.Body = "Hallo"
Call .Attachments.Add(ActiveWorkbook.FullName)
Call .Display
End With
Set objMail = Nothing
Set objOutlook = Nothing
End Sub
Gruß
Nepumuk

Betrifft: AW: Email aus Excel versende Office 2016
von: Toby...
Geschrieben am: 26.09.2020 23:31:50
Perfekt. Vielen Dank!!!