如何從 Excel 發送帶有超連結的電子郵件內文?
在許多工作場景中,您可能需要直接從 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
.Display
End With
Set xOtl = Nothing
Set xOtlMail = Nothing
End Sub
注意:
- 根據您的需求編輯 xStrBody 行中的超連結和正文文字。這裡使用了 HTML
<a href="/"></a>
標籤——請記住驗證您的鏈接和可見文字。 - 將 .To、.CC 和 .BCC 欄位中的「Email Address」替換為實際的收件人電子郵件地址。如果不需要 CC/BCC 欄位,可以省略(通過刪除或註釋掉它們的行)。
- 更新 .Subject 行中的「Subject line」以反映您的郵件主題。
- 確保在運行此巨集之前已安裝並可訪問 Microsoft Outlook。
3. 編輯完程式碼後,按 F5 鍵運行它。Outlook 中將打開一個新的郵件窗口,預填指定的欄位,並且您的超連結嵌入在正文中。檢查郵件並點擊 發送 以傳送它。
提示:如果您在 Outlook 中遇到安全提示,請確認您有權通過程式碼發送郵件,並且您的巨集安全設置允許執行。為了獲得最佳效果,始終在自動化給更多受眾之前使用樣本郵件進行測試。
優點: 支持可自訂、格式化的 HTML 郵件,內嵌超連結並自動發送。自動化可以為重複或大量郵件節省大量時間。
缺點: 需要 Outlook,可能需要調整巨集安全設置。不適合不熟悉 VBA 的用戶。
使用 Excel 的 HYPERLINK 公式生成 mailto 超連結
此方法使用 Excel 的 HYPERLINK 函數在工作表中創建可點擊的鏈接。點擊這些鏈接會啟動默認的郵件客戶端(如 Outlook 或 Mail)來撰寫預填好的郵件。使用此方法,您可以預先定義收件人、主題、正文內容,甚至額外的鏈接,為郵件創建提供快速啟動——儘管發送仍需用戶手動操作。
如果您想為他人提供模板鏈接或簡化重複性郵件任務而無需自動化,這是合適的選擇。您可以將此方法與工作表數據結合,為不同用戶創建動態郵件模板。
1. 選擇要放置 mailto 超連結的單元格,例如 B2。
=HYPERLINK("mailto:someone@example.com?subject=Test Subject&body=Please review this link: https://www.example.com","Send Email")
2. 輸入公式後,按 Enter 將使該單元格變成可點擊的鏈接。點擊該鏈接將打開您的默認郵件應用程序,並根據公式內容填入 收件人、主題 和 正文 欄位。您可以進一步使用單元格引用來適應動態消息。
- 例如,使用 A2 的值作為收件人,B2 的值作為鏈接:
=HYPERLINK("mailto:"&A2&"?subject=Hello&body=Please visit: "&B2, "Email User")
優點: 快速實現,無需編程,支持動態內容。靈活處理數據集或一次生成大量鏈接。
缺點: 無法自動發送——用戶仍需手動檢查並提交每封郵件。郵件正文長度受 mailto 協議限制;過長或格式化的正文可能會截斷或顯示不佳。

使用 Kutools AI 解鎖 Excel 的魔法
- 智能執行:執行單元格操作、分析數據並創建圖表——所有這些都由簡單的指令驅動。
- 自訂公式:生成量身定制的公式,簡化您的工作流程。
- VBA 編碼:輕鬆編寫和實現 VBA 代碼。
- 公式解釋:輕鬆理解複雜的公式。
- 文本翻譯:打破電子表格中的語言障礙。
相關文章
根據 Excel 中的單元格值自動發送郵件
假設您想根據 Excel 中的特定單元格值通過 Outlook 向某個收件人發送郵件。例如,當工作表中 D7 單元格的值大於 200 時,則自動創建郵件。本文介紹了一種 VBA 方法,幫助您快速解決這個問題。
如果在 Excel 中點擊按鈕則發送郵件
假設您需要通過點擊 Excel 工作表中的按鈕來通過 Outlook 發送郵件,該怎麼做呢?本文將詳細介紹一種 VBA 方法來實現。
如果在 Excel 中到期日已到達則發送郵件
假設 C 列中的到期日小於或等於 7 天(當前日期為 2017/9/13),則向 A 列中的指定收件人發送提醒郵件,郵件內容為 B 列中的指定內容。如何實現?本文的方法可以幫到您。
最佳 Office 生產力工具
🤖 | Kutools AI 助手:以智能執行為基礎,革新數據分析 |生成程式碼 | 創建自訂公式 | 分析數據並生成圖表 | 調用 Kutools 增強函數… |
熱門功能:查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不遺失數據 | 四捨五入(免公式)... | |
高級 LOOKUP:多條件 VLookup|多值 VLookup|多表查找|模糊查找... | |
高級下拉列表:快速創建下拉列表 |依賴型下拉列表 | 多選下拉列表... | |
列管理器:添加指定數量的列 | 移動列 | 切換隱藏列的顯示狀態 | 比較區域及列... | |
精選功能:網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫(快捷文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按列表發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線...)... | |
15 大工具集:12 項文本工具(添加文本、刪除特定字符…)|50+ 儀表 類型(甘特圖等)|40+ 實用 公式(基於生日計算年齡等)|19 項插入工具(插入QR码、根據路徑插入圖片等)|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 天全功能試用 — 無需註冊、無需信用卡
- 最超值 — 一次購買,節省單獨外掛費用