Axel.Korte
-
Gesamte Inhalte
3 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von Axel.Korte
-
-
Danke für Deine Whiz-zarD Antwort. SenderEmailAddresse ist ein schreibgeschütztes Argument und daher ungeeignet.
Danke auch für die Anworten von Rienne und Gottlike. Ich verstehe was Sie meinen und versuche das morgen umzusetzen.
-
Hallo und guten Abend,
erstmals stehe ich vor einem VBA Problem und suche hier - hoffentlich erfolgreich - Hilfe.
Ich möchte mit einem VBA-Script eine Mail an Outlook zur weiteren Bearbeitung übergeben. Bis auf die Übergabe der Absender-EMailadresse funktioniert alles. Hier mein Script:
Dim objOutlook As Outlook.Application
Dim objMail As Outlook.MailItem
Dim objAccount As Outlook.AccountSet objOutlook = New Outlook.Application
Set objMail = objOutlook.CreateItem(olMailItem)With objMail
.objAccount = Me.Absender ' Fehler 438 Objekt unterstützt diese Eigenschaft oder Methode nicht
.Recipients.ADD Empfaenger(0)
If Empfaenger(1) <> "" Then .CC = Empfaenger(1)
If Empfaenger(2) <> "" Then .BCC = Empfaenger(2)
.Subject = Me.Subject
.BodyFormat = olFormatHTML
.HTMLBody = Me.Mail
.Display
End WithAn der Rot-markierten Stelle kommt der Fehler 438 und ich weiß mir keinen Rat. In Me.Absender steht die EMail-Absenderadresse als String.
Vielleicht hat ja schon jemand dieses Problem gelöst - hoffe ich - und kann mir helfen?
Vielen Dank im Voraus.
Axel Korte
VBA - Mail erstellen
in Anwendungsentwickler und Programmierer
Geschrieben
Guten Abend,
ich habe, dank Ihrer aller Hilfe das Problem lösen können. Hier der korrekte Code, falls jemand auf ein ähnliches Problem stößt:
Dim objOutlook As Outlook.Application
Dim objMail As Outlook.MailItem
Dim objAccount As Outlook.Account
Set objOutlook = New Outlook.Application
Set objMail = objOutlook.CreateItem(olMailItem)
If Me.Absender <> "" Then
For Each objAccount In objOutlook.Session.Accounts
If objAccount.DisplayName = Me.Absender Then Exit For
Set objAccount = Nothing
Next objAccount
Else
Set objAccount = Nothing
End If
With objMail
If Not objAccount Is Nothing Then
.SendUsingAccount = objAccount
Else
MsgBox "Account ''" & Absender & "'' nicht gefunden.", vbCritical, "Hinweis"
End If
.Recipients.ADD Empfaenger(0)
If Empfaenger(1) <> "" Then .CC = Empfaenger(1)
If Empfaenger(2) <> "" Then .BCC = Empfaenger(2)
.Subject = Me.Subject
.BodyFormat = olFormatHTML
.HTMLBody = Me.Mail
.Display
End With
Interessant ist dabei, dass in .SendUsingAccout nicht die EMail-Adresse sondern die Bezeichnung des Kontos im Outlook steht.
Vielen Dank nochmals und eine besinnliche Weihnachtszeit.