mit diesem Code habe ich bisher problemlos E-Mails aus Excel verschicken bzw. vorbereiten können:
Dim objOutlook As Object
Dim objMail As Object
Dim strSignatur As String, vorhanden As Variant
Set objOutlook = CreateObject("Outlook.Application")
Set objMail = objOutlook.CreateItem(0)
With objMail
If email_SentOnBehalf "" Then
.SentOnBehalfOfName = email_SentOnBehalf
End If
.To = email_To
If email_CC "" Then
.CC = email_CC
End If
If email_BCC "" Then
.BCC = email_BCC
End If
For i = 1 To 20
If email_Attachment(i) "" Then
vorhanden = ""
vorhanden = Dir(email_Attachment(i))
If vorhanden "" Then
.Attachments.Add email_Attachment(i)
End If
End If
Next i
.Subject = email_Subj
.BodyFormat = olFormatHTML
.HTMLBody = email_Text
' Erstellt die Email und öffnet diese. Der Versand erfolgt automatisch.
If email_Send = "Send" Then
.Send
' Erstellt die Email und öffnet diese. Der Versand erfolgt anschließend manuell.
Else
.Display
End If
' in Outlook gespeicherte Signatur anfügen
If email_Signature "" Then
'VBA.SendKeys "^{END}", True
'.GetInspector.CommandBars.Item("Insert").Controls("Signatur").Controls(email_Signature).Execute
End If
End With
Set objMail = Nothing
Set objOutlook = Nothing
Seit ich jetzt Excel 365 verwende habe ich 2 Probleme:
1. ich verwende ".Display" um das E-Mail nochmal anzusehen. Dann klicke ich in Outlook auf "Senden" und bekomme eine Fehlermeldung, dass das E-Mail nicht versendet werden kann. Ich kann diesen Fehler manuell beheben, indem ich "Senden / Von" in dem Dropdown der E-Mail-Adressen in Outlook manuell auswähle. Ich wähle die identische Absendeadresse aus. Es sieht genauso aus, wie vorher, aber jetzt kann ich das E-Mail problemlos verschicken.
2. Der VBA-Code der eine Signatur einfügt führt zu einer Fehlermeldung: Laufzeifehler 5: Ungültiger Prozeduraufruf oder ungültiges Argument. Der Debugger markiert die Zeile "Getinspector". Das hat auch vorher mit Excel 2010/2016 funktioniert.
Die Verweise in der Excel-Datei sind auf "Microsoft Outlook 16.0 Object Library" gesetzt.
Das Excel 365 hat ebenfalls die interne Version 16.0.
Kann mir hier vielleicht jemand weiter helfen?
Viele Grüße
Dietmar