Outlook 2019能否基于邮件内容自动向第三方发送预设模板邮件?
自动化解决方案
以下是几种简便的实现方式,无需复杂开发就能满足需求:
1. Outlook 规则 + VBA 脚本(适合用Outlook管理邮箱的场景)
- 先设置邮件规则:筛选来自同事、主题包含指定暗号(比如
[AUTOSEND])的邮件,触发时运行VBA脚本 - 编写简单VBA脚本完成核心操作:
- 解析触发邮件的正文,提取「客户邮箱:xxx」「客户ID:xxx」格式的内容
- 加载预先保存的Outlook模板(
.oft格式) - 替换模板中的客户ID占位符(比如
{{客户ID}}) - 将模板邮件发送到提取到的客户邮箱
- 示例VBA代码片段:
Sub AutoSendTemplate(Item As Outlook.MailItem) Dim bodyText As String bodyText = Item.Body ' 提取客户邮箱和ID Dim clientEmail As String, clientID As String clientEmail = Mid(bodyText, InStr(bodyText, "客户邮箱:") + 5, InStr(InStr(bodyText, "客户邮箱:"), bodyText, vbCrLf) - InStr(bodyText, "客户邮箱:") - 5) clientID = Mid(bodyText, InStr(bodyText, "客户ID:") + 5, InStr(InStr(bodyText, "客户ID:"), bodyText, vbCrLf) - InStr(bodyText, "客户ID:") - 5) ' 加载模板 Dim newMail As Outlook.MailItem Set newMail = Application.CreateItemFromTemplate("C:\Templates\CustomerTemplate.oft") ' 替换占位符并发送 newMail.To = clientEmail newMail.HTMLBody = Replace(newMail.HTMLBody, "{{客户ID}}", clientID) newMail.Send End Sub
2. 低代码自动化工具(比如Power Automate)
- 创建自动化流的步骤:
- 触发条件:当通用邮箱收到新邮件,设置筛选规则(发件人为同事组、主题含指定暗号)
- 数据提取:从邮件正文中按固定格式提取客户邮箱和客户ID(比如用「文本提取」动作匹配关键字)
- 模板调用:加载预先存在OneDrive/SharePoint的邮件模板,替换模板中的客户ID变量
- 发送邮件:用通用邮箱账户将处理后的模板邮件发送给客户
- 优势:无需写代码,可视化配置,支持多邮箱平台(Outlook、Gmail等)
3. 企业邮箱自定义规则(部分平台支持)
- 如果使用的是企业级邮箱(比如Exchange、腾讯企业邮等),部分平台支持带变量提取的转发规则:
- 创建规则:筛选含暗号的邮件
- 设置转发动作,选择预设的邮件模板
- 配置模板变量,从原邮件正文提取客户邮箱和ID填充到对应位置
- 注意:该功能依赖邮箱提供商的支持,需要先确认你的邮箱是否具备此能力
关键注意事项
- 暗号要设置唯一且不易被误触发的格式,避免错误发送邮件
- 和同事约定固定的信息格式,比如必须在正文中明确标注「客户邮箱:xxx」「客户ID:xxx」,确保提取逻辑稳定
- 先使用测试邮箱完成全流程验证,确认无误后再投入正式使用
- 确保通用邮箱账户拥有执行自动化操作的权限(比如Outlook宏权限、Power Automate的邮箱访问权限)
内容的提问来源于stack exchange,提问作者Emanuel Levy
相关产品推荐
相关产品推荐

