【发布时间】:2018-12-18 15:01:26
【问题描述】:
我希望你能帮助我,因为我正在撕扯我的头发,尽管我所有的谷歌搜索都告诉我这应该可以工作......
我正在尝试创建一个从 excel 发送电子邮件的宏。它有效,但我必须在发送之前手动添加我的签名。不是世界末日,但还是很烦人。
当我尝试添加代码以添加我的默认签名时,它会应用我的签名但会删除正文的其余部分......请帮助!
Sub email()
Dim Outlook_App As Object
Dim Outlook_Mail As Object
Dim emailBody As String
Dim ToBody As String
Dim CCBody As String
Dim BCCBody As String
Set Outlook_App = CreateObject("Outlook.Application")
Set Outlook_Mail = Outlook_App.CreateItem(0)
ToBody = ThisWorkbook.Sheets("Test").Range("N9")
CCBody = ThisWorkbook.Sheets("Test").Range("N10")
BCCBody = ThisWorkbook.Sheets("Test").Range("N11")
emailBody = "<BODY style=font-size:11pt;font-family:Calibri>Hi <br> <br>" & _
"Your work has been randomly sampled. I have submitted your feedback on the Database. <br> <br>" & _
"Please can you go in to review and accept your feedback within the next <b>5 working days?</b> <br> <br>" & _
"<a href= """ & ThisWorkbook.Sheets("Test").Range("N12") & """>User Guide – How to Accept Feedback</a> <br>"
On Error Resume Next
With Outlook_Mail
.Display
'.To = ToBody
'.CC = CCBody
'.bcc = BCCBody
.Subject = "Feedback - Action Required"
.HTMLBody = emailBody & .HTMLBody
End With
On Error GoTo 0
Set Outlook_Mail = Nothing
Set Outlook_App = Nothing
End Sub
【问题讨论】:
-
执行代码删除
On Error Resume Next行会出现错误吗? -
论坛上发布了一个类似的问题 - 请查看 Julia 的答案,该答案创建了一个电子邮件正文并保留了默认签名(如果有的话)。看起来 emailBody 负责删除您的默认签名。 How to add default signature in outlook
-
谢谢贾斯蒂娜,我会检查一下是否有帮助! Foxfire 我收到运行时错误 287 - 当我调试时,.htmlbody 行出现问题,不知道为什么!
-
@JustynaMK 原来我已经尝试过 Julia 的回答,我在签名 = OMail.body 上遇到运行时 287 错误,有什么想法吗?
标签: excel vba email outlook signature