【发布时间】:2022-05-04 04:33:48
【问题描述】:
我正在尝试使用 VBA for Excel 自动化一些电子邮件。到目前为止一切都很好,除了试图在电子邮件中保留我的签名。
一旦您告诉 VBA 创建新电子邮件,它就会包含您的默认签名。如果您尝试Outmail.Display,则可以看到这一点。但是,如果您覆盖 .HTMLBody 属性,它将被删除。
我的简单尝试是将.HTMLBody 的内容保存到signature(字符串),然后将其重新分配给.HTMLBody 以进行测试。但是,生成的电子邮件将没有任何签名。
复制并重新插入签名的代码:
Dim myOlApp As Outlook.Application
Dim MyItem As Outlook.MailItem
Dim signature As String
Set myOlApp = CreateObject("Outlook.Application")
Set Outmail = myOlApp.CreateItem(0)
signature = Outmail.HTMLBody
Outmail.HTMLBody = signature
Outmail.Display
显示自动插入签名的代码:
Dim myOlApp As Outlook.Application
Dim MyItem As Outlook.MailItem
Set myOlApp = CreateObject("Outlook.Application")
Set Outmail = myOlApp.CreateItem(0)
Outmail.Display
编辑:我尝试用.Body 替换.HTMLBody。这行得通,但显然去掉了签名的 HTML 格式
编辑 2:该代码在我朋友的计算机上有效,但在我的计算机上无效
【问题讨论】:
标签: excel vba outlook signature