如何在 Excel 中发送具有指定粗体/大小/颜色/下划线文本格式的电子邮件?
在许多专业场景中,仅仅从 Excel 发送纯文本邮件可能不足以突出重要内容或增强可读性。例如,您可能希望强调关键信息、添加标题或使用不同颜色来组织收件人的信息。应用丰富的 HTML 格式——如粗体、下划线、自定义字体大小和彩色文本——可以让您直接从 Excel 创建视觉上吸引人且易于阅读的电子邮件。本文讨论了从 Excel 发送带有自定义 HTML 格式正文(包括粗体、下划线、大小和颜色设置)的实用方法。
使用 VBA 代码发送具有指定粗体/大小/颜色/下划线文本格式的电子邮件
使用 VBA 代码发送具有指定粗体/大小/颜色/下划线文本格式的电子邮件
要直接从 Excel 发送格式良好的电子邮件,您可以使用 VBA 宏通过 HTML 标签定义消息正文。这种方法让您完全控制电子邮件内容在收件人面前的呈现方式,支持在邮件正文中直接使用粗体、下划线、彩色以及调整大小的文本等细节。
在以下情况下,使用 VBA 自定义并从 Excel 发送电子邮件特别有用:
- 您希望根据数据生成并发送报告、分析或提醒,并突出显示特定内容。
- 您需要在自动化电子邮件中保持专业的品牌形象。
- 多个元素——如标题、页眉或说明——应清晰突出,以提高可读性。
然而,使用 VBA 发送电子邮件需要具备 VBA 编辑器和 Outlook 集成的基本知识,并且您应该拥有通过编程方式发送电子邮件所需的 Outlook 权限。
以下是完成此任务的详细步骤:
1. 同时按下 Alt + F11 键。这将打开 Microsoft Visual Basic for Applications (VBA) 编辑器窗口,在这里您可以添加自定义代码以自动化 Excel 流程。
2. 在 VBA 编辑器窗口中,转到顶部菜单并单击插入 > 模块,以创建一个新的空白代码模块。将下面提供的 VBA 代码复制并粘贴到此窗口中。
VBA 代码:在 Excel 中发送具有特定粗体/大小/颜色/下划线文本格式的电子邮件
Sub SharePerformance1()
'Update by ExtendOffice 2018/3//5
Dim xOutApp As Object
Dim xOutMail As Object
Dim xOutMsg As String
On Error Resume Next
Set xOutApp = CreateObject("Outlook.Application")
Set xOutMail = xOutApp.CreateItem(0)
xOutMsg = "<b>This text is bold</b><br/><span style=""color:#80BFFF"">Font Color</span style=""color:#80BFFF""><br />" & _
"<u>New line with underline</u><br /><p style='font-family:calibri;font-size:25'>Font size</p>"
With xOutMail
.To = "Email Address"
.CC = ""
.BCC = ""
.Subject = "Html format email"
.HTMLBody = xOutMsg
.Display
End With
Set xOutMail = Nothing
Set xOutApp = Nothing
End Sub
参数和格式提示:
3. 在完成必要的编辑后,按 F5 键执行代码。Outlook 将打开一封带有指定格式的新邮件。检查消息,然后点击“发送”按钮以发送您的定制电子邮件。
预防措施和额外提示:确保 Outlook 已打开并设置为默认邮件客户端;否则宏可能无法创建或发送消息。如果您遇到与程序化发送相关的安全提示,请相应调整您的 Outlook 设置或咨询您的 IT 管理员。始终验证收件人电子邮件的准确性,以防止意外投递。通过向自己发送测试邮件来确认您的 HTML 格式在不同设备和邮件客户端上按预期显示。
这种 VBA 方法为 HTML 样式提供了最大的灵活性,但要求本地安装 Outlook 并可能需要调整 Outlook 宏安全设置。对于没有安装 Outlook 或需要更友好的基于点击的流程的用户,请考虑其他解决方案或插件。
替代方案:使用 Kutools for Excel 的“发送电子邮件”工具
如果您经常需要从 Excel 发送格式化的电子邮件,但又不想编写或运行 VBA 代码,Kutools for Excel 提供了一个实用功能:“发送电子邮件”工具。该插件允许您根据 Excel 工作表中的数据发送个性化、HTML 格式的邮件(包括粗体、下划线、彩色和调整大小的文本),而无需处理复杂的代码或潜在的 Outlook 安全提示。
轻松通过 Outlook 基于 Excel 中创建的邮件列表字段发送电子邮件:
The Send Emails utility of Kutools for Excel helps users sending email through Outlook based on created mailing list in Excel.
立即下载并试用!
- 如果您频繁发送类似的电子邮件,或者需要动态包含来自多行的数据,则推荐此方法。
- 通过使用 Kutools,您可以直接通过交互对话框编写 HTML 格式的电子邮件,预览效果,并批量发送正确格式的邮件。
与基于代码的方法相比,使用 Kutools 减少了出错的可能性,对初学者友好,且无需启用或编辑宏。
如果您在运行 VBA 解决方案时遇到任何错误消息(例如“对象变量或 With 块未设置”),请确保您的 Outlook 程序已安装并正确配置,您的宏设置允许执行 VBA 代码,并且所有必需的引用都已启用。您可能还需要更新电子邮件地址并调整 HTML 标签,以确保与收件人的邮件客户端兼容(某些旧版本的客户端可能不支持所有高级样式)。对于批量发送或高容量需求,始终先用较小的样本进行测试,以避免触发垃圾邮件过滤器。
相关文章:
- 如何根据 Excel 中的单元格值自动发送电子邮件?
- 在 Excel 中通过 VBA 发送电子邮件时,如何在 Outlook 邮件中插入签名?
- 如何在没有 Outlook 的情况下在 Excel 中发送电子邮件?
- 如何在 Excel 中通过 VBA 将特定图表发送到电子邮件中?
- 如何在一天中的特定时间从 Excel 发送电子邮件?
- 如何在 Excel 中发送带有 HTML 邮件正文的电子邮件?
最佳Office办公效率工具
🤖 | Kutools AI 助手:以智能执行为基础,彻底革新数据分析 |代码生成 |自定义公式创建|数据分析与图表生成 |调用Kutools函数…… |
热门功能:查找、选中项的背景色或标记重复项 | 删除空行 | 合并列或单元格且不丢失数据 | 四舍五入…… | |
高级LOOKUP:多条件VLookup|多值VLookup|多表查找|模糊查找…… | |
高级下拉列表:快速创建下拉列表 |依赖下拉列表 | 多选下拉列表…… | |
列管理器: 添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域与列…… | |
特色功能:网格聚焦 |设计视图 | 增强编辑栏 | 工作簿及工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按名单发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/倾斜/删除线等)…… | |
15大工具集:12项 文本工具(添加文本、删除特定字符等)|50+种 图表 类型(甘特图等)|40+实用 公式(基于生日计算年龄等)|19项 插入工具(插入二维码、从路径插入图片等)|12项 转换工具(小写金额转大写、汇率转换等)|7项 合并与分割工具(高级合并行、分割单元格等)| …… |
通过Kutools for Excel提升您的Excel技能,体验前所未有的高效办公。 Kutools for Excel提供300多项高级功能,助您提升效率并节省时间。 点击此处获取您最需要的功能……
Office Tab为Office带来多标签界面,让您的工作更加轻松
- 支持在Word、Excel、PowerPoint中进行多标签编辑与阅读。
- 在同一个窗口的新标签页中打开和创建多个文档,而不是分多个窗口。
- 可提升50%的工作效率,每天为您减少数百次鼠标点击!
所有Kutools加载项,一键安装
Kutools for Office套件包含Excel、Word、Outlook和PowerPoint的插件,以及Office Tab Pro,非常适合跨Office应用团队使用。





- 全能套装——Excel、Word、Outlook和PowerPoint插件+Office Tab Pro
- 单一安装包、单一授权——数分钟即可完成设置(支持MSI)
- 协同更高效——提升Office应用间的整体工作效率
- 30天全功能试用——无需注册,无需信用卡
- 超高性价比——比单独购买更实惠