You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Outlook邮件中创建可生成收件人回复模板的号召性按钮

解决Outlook邮件宏的三个核心需求:按钮替代超链接、自动回复模板、抄送组配置

实现要点说明

  • 专业样式按钮替代超链接:用HTML的<button>标签结合mailto链接,搭配CSS样式打造更规范的按钮外观,比普通超链接更直观醒目
  • 自动填充回复模板:优化mailto链接的Body参数,预设好回复的格式框架,收件人直接填写内容即可
  • 添加抄送组:在mailto链接中加入cc参数(确保收件人回复时自动抄送指定群组),同时设置新邮件的默认抄送地址

完整代码示例

Sub macTestEmail()
    Dim App As Outlook.Application
    Dim NewMail As MailItem
    Dim MailTo As String
    Dim MailCC As String
    Dim TheSubject As String
    Dim TheBody As String
    
    ' 配置收件人、抄送组
    MailTo = "primary@example.com" ' 主收件人地址
    MailCC = "cc-group@example.com;another-member@example.com" ' 抄送组邮箱,用分号分隔多个地址
    
    TheSubject = "Test Email"
    
    ' 构建带按钮的HTML邮件内容
    TheBody = "<HTML><BODY style='font-family:Arial, sans-serif; font-size:14px;'>"
    TheBody = TheBody & "请点击下方按钮完成回复,截止时间:今日" & "<br><br>"
    
    ' 1. 完全同意按钮 - 自动填充回复主题、内容模板和抄送
    TheBody = TheBody & "<button style='background-color:#2563eb;color:white;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;margin-right:8px;' "
    TheBody = TheBody & "onclick=""window.location='mailto:abc@xyz.com?Subject=Full Agree To The Test&cc=" & MailCC & "&Body=我完全同意以下内容%0d%0a%0d%0aLine 1:%0d%0aLine 2:%0d%0aLine 3:%0d%0aLine 4:'"">"
    TheBody = TheBody & "完全同意</button><br><br>"
    
    ' 2. 部分同意按钮
    TheBody = TheBody & "<button style='background-color:#f59e0b;color:white;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;margin-right:8px;' "
    TheBody = TheBody & "onclick=""window.location='mailto:abc@xyz.com?Subject=Partial Agree To The Test&cc=" & MailCC & "&Body=我部分同意,具体说明:%0d%0a'"">"
    TheBody = TheBody & "部分同意</button><br><br>"
    
    ' 3. 完全异议按钮
    TheBody = TheBody & "<button style='background-color:#dc2626;color:white;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;margin-right:8px;' "
    TheBody = TheBody & "onclick=""window.location='mailto:abc@xyz.com?Subject=Full Dispute To The Test&cc=" & MailCC & "&Body=我提出完全异议,原因:%0d%0a'"">"
    TheBody = TheBody & "完全异议</button>"
    
    TheBody = TheBody & "</BODY></HTML>"
    
    Set App = CreateObject("Outlook.Application")
    Set NewMail = App.CreateItem(olMailItem)
    
    NewMail.To = MailTo
    NewMail.CC = MailCC ' 设置新邮件的默认抄送地址
    NewMail.Subject = TheSubject
    NewMail.HTMLBody = TheBody
    NewMail.Display
    'NewMail.Send
End Sub

关于换行符的说明

你之前用的%0d是回车符,但不同邮箱客户端对换行的解析存在差异,建议使用%0d%0a(回车+换行)组合,这样能保证在Outlook、Gmail等主流客户端中都能正确显示换行。如果需要添加空行,可以连续使用两次%0d%0a(比如示例中的%0d%0a%0d%0a)。

内容的提问来源于stack exchange,提问作者WittyWook

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 07:01:55