跳至主要内容

如何从 Excel 发送带有超链接的电子邮件?

Author Siluvia Last modified

在许多工作场景中,您可能需要直接从 Excel 发送电子邮件,并且在某些情况下,您希望在邮件正文中包含可点击的超链接。例如,您可能希望收件人能够直接通过邮件访问文件、访问网站或打开其他相关文档。您可以通过多种实用方法在 Excel 中实现这一点,包括 VBA 自动化、Excel 内置的超链接功能以及使用公式。每种方法都有其独特的优势,适用于不同的使用场景——无论是自动化、手动定制还是基于电子表格生成链接。本指南将介绍几种在从 Excel 发送的邮件正文中插入超链接的方法,并讨论每种方法的应用价值和注意事项。


使用 VBA 代码将超链接插入邮件正文

此方法专为需要发送带有直接嵌入消息正文中的超链接的邮件用户设计,利用 Outlook 作为发送客户端。利用 VBA,您可以自动从 Excel 中撰写并自定义邮件,在正文中嵌入任何所需的超链接或格式化文本。这对于批量发送、工作流自动化或需要从工作表中包含模板文本和动态值的情况特别有用。

1. 打开您的工作簿,然后按 Alt + F11 键打开 Microsoft Visual Basic for Applications 窗口。

2. 在 Visual Basic 编辑器中,转到 插入 > 模块 ,并将以下 VBA 代码粘贴到模块编辑器中。

VBA 代码:将超链接插入邮件正文

Sub EmailHyperlink()
'updated by Extendoffice 20190815
Dim xOtl As Object
Dim xOtlMail As Object
Dim xStrBody As String
    xStrBody = "Hi there:" & "<br>" _
              & "Please click " & "<a href="/ & "http://www.extendoffice.com"">Here</a> to open the page" & "<br>" _
              & "Thank you."
    On Error Resume Next
    Set xOtl = CreateObject("Outlook.Application")
    Set xOtlMail = xOtl.CreateItem(olMailItem)
    With xOtlMail
        .To = "Email Address"
        .CC = "Email Address "
        .BCC = " Email Address "
        .Subject = "Subject line"
        .HTMLBody = .HTMLBody & xStrBody