【发布时间】:2023-04-08 03:06:01
【问题描述】:
我有一个创建新电子邮件的宏,代表发送......但我不想明确使用硬编码的电子邮件地址,而是询问 Outlook 已经设置了哪些地址。
我正在考虑使用过滤器(例如 .... 以“@myonbehalfdomain.com”结尾)
所以在下面的示例中:Eonbehalf 应该获得第二个电子邮件地址,我可以在新电子邮件中使用下拉“发件人”字段看到该地址。
有道理吗?
Sub CreateNewMail()
Dim olNS As Outlook.NameSpace
Dim oMail As Outlook.MailItem
Set olNS = Application.GetNamespace("MAPI")
Set oMail = Application.CreateItem(olMailItem)
strbody = "<BR><BR><BR>"
SigString = Environ("appdata") & _
"\Microsoft\Handtekeningen\custom.htm"
If Dir(SigString) <> "" Then
Signature = GetBoiler(SigString)
Else
Signature = ""
End If
On Error Resume Next
Eonbehalf = getemailaddress(2)
oMail.SentOnBehalfOfName = Eonbehalf
oMail.Display
oMail.HTMLBody = strbody & Signature
Set oMail = Nothing
Set olNS = Nothing
End Sub
【问题讨论】:
-
用户应该选择地址吗?
-
@Damian,不,我想使用以“@certaindomain.com”结尾的电子邮件地址......所以我有我的主要帐户(test@test.com)和一个代表(test @certaindomain.com)。我想要第二个(test@certaindomain.com)或者如果那不可能:我想要一个来自我的主电子邮件地址(测试)的字符串,这样我就可以自己编译 sentonbehalfname。