【发布时间】:2020-11-06 11:17:48
【问题描述】:
我更新主题行和正文中的日期。
我正在尝试将我的默认签名添加到电子邮件的末尾。
Sub AutomatedMessage()
Dim OApp As Object, OMail As Object, signature As String
Set OApp = CreateObject("Outlook.Application")
Set OMail = OApp.CreateItem(0)
With OMail
.Display
End With
signature = OMail.body
start_date = Format(Now, "dddd d mmmm")
end_date = Format(Now + 6, "dddd d mmmm")
start_date_short = Format(Now, "d mmmm")
end_date_short = Format(Now + 6, "d mmmm yyyy")
With OMail
.To = email@company.com
.CC = email@company.com
.Subject = "Email subject" & start_date_short & " to " & end_date_short
.Body = "Dear people, etc etc starting" & start_date & " and ending" & end_date & signature
End With
Set OMail = Nothing
Set OApp = Nothing
End Sub
这会导致运行时错误 287。
调试时,.Display 后面的.body 只包含,尽管我在打开邮件时可以看到签名在邮件中。
【问题讨论】:
-
这能回答你的问题吗? How to add default signature in Outlook
-
如果有图片则
.HTMLBody而不是.Body。 -
链接的文章是我最初写这篇文章的依据。即使使用 HTMLBody 而不是 body,每次保存 HTMLBody 时都会引发运行时错误“287”。打开调试器显示
.HTMLBody和.Body是空的,即使显示的电子邮件中有内容。我见过的大多数事情都使用相同的方法,并给我同样的错误。