Skip to main content

如何在 Excel 中將電子郵件發送到單元格中指定的電子郵件地址?

Author: Siluvia Last Modified: 2025-05-12

假設您有一份電子郵件地址清單,現在您希望直接在 Excel 中批量向這些電子郵件地址發送郵件。該如何實現呢?本文將介紹如何在 Excel 中向單元格中指定的多個電子郵件地址發送郵件的方法。

使用 VBA 在 Excel 中向單元格中指定的電子郵件地址發送郵件
使用 Kutools for Excel 輕鬆向單元格中指定的電子郵件地址發送郵件


使用 VBA 在 Excel 中向單元格中指定的電子郵件地址發送郵件

以下 VBA 代碼可以幫助您向 Excel 中指定的電子郵件地址發送郵件。請按照以下步驟操作。

1. 在包含需要發送郵件的電子郵件地址的工作表中,同時按下 Alt + F11 鍵以打開 Microsoft Visual Basic for Applications 窗口。

2. 在打開的 Microsoft Visual Basic for Applications 窗口中,請點擊「工具」>「引用」,如下截圖所示。

click Tools > References

3. 在「引用 - VBAProject」對話框中,請找到並勾選「Microsoft Outlook Object Library」選項,然後點擊「確定」按鈕。

find and check the Microsoft Outlook Object Library option

4. 接著點擊「插入」>「模塊」。然後複製並將以下 VBA 代碼粘貼到模塊窗口中。

VBA 代碼:向 Excel 單元格中指定的電子郵件地址發送郵件

Sub SendEmailToAddressInCells()
    Dim xRg As Range
    Dim xRgEach As Range
    Dim xRgVal As String
    Dim xAddress As String
    Dim xOutApp As Outlook.Application
    Dim xMailOut As Outlook.MailItem
    On Error Resume Next
    xAddress = ActiveWindow.RangeSelection.Address
    Set xRg = Application.InputBox("Please select email address range", "KuTools For Excel", xAddress, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Application.ScreenUpdating = False
    Set xOutApp = CreateObject("Outlook.Application")
    Set xRg = xRg.SpecialCells(xlCellTypeConstants, xlTextValues)
    For Each xRgEach In xRg
        xRgVal = xRgEach.Value
        If xRgVal Like "?*@?*.?*" Then
            Set xMailOut = xOutApp.CreateItem(olMailItem)
            With xMailOut
                .To = xRgVal
                .Subject = "Test"
                .Body = "Dear " _
                      & vbNewLine & vbNewLine & _
                        "This is a test email " & _
                        "sending in Excel"
                .Display
                '.Send
            End With
        End If
    Next
    Set xMailOut = Nothing
    Set xOutApp = Nothing
    Application.ScreenUpdating = True
End Sub

注意:請在代碼中的 .Subject = "test".Body = "Dear " _ & vbNewLine & vbNewLine & _ "這是一封測試郵件 " & _ "通過 Excel 發送" 行中指定您的郵件主題和正文內容。

5. 按下 F5 鍵運行代碼。在彈出的 Kutools for Excel 對話框中,請選擇包含要發送郵件的電子郵件地址的區域,然後點擊「確定」按鈕。請參見截圖:

vba code to select the range contains the email addresses

然後根據所選的電子郵件地址創建郵件,如下截圖所示。請點擊「發送」按鈕來發送這些郵件。

emails based on selected email addresses are created

注意事項

1. 如果在所選單元格中有三個電子郵件地址分別存在,則會創建三封郵件。
2. 此 VBA 代碼僅在您使用 Outlook 作為郵件程序時有效。

使用 Kutools for Excel 向單元格中指定的電子郵件地址發送郵件

本節將向您推薦 Kutools for Excel 的「發送電子郵件」功能。使用此功能,您可以輕鬆地向 Excel 單元格中指定的電子郵件地址發送郵件。請按照以下步驟操作。

Kutools for Excel 提供超過 300 種進階功能,簡化複雜任務,提升創造力與效率。 結合 AI 能力,Kutools 能夠精準自動化任務,讓數據管理變得輕而易舉。Kutools for Excel 的詳細資訊...免費試用...

1. 在工作表中選擇帶有標題單元格的電子郵件地址,然後點擊「Kutools Plus」>「發送電子郵件」。

 click Send Emails feature of kutools

2. 在彈出的「發送電子郵件」對話框中,請進行以下配置:

2.1) 在「收件人」下拉列表中選擇電子郵件地址列表的標題;
2.2) 在「主題」框中輸入郵件主題;
2.3) 編寫郵件正文;
2.4) 勾選「使用 Outlook 發送電子郵件」框;
2.5) 點擊「發送」按鈕。請參見截圖:

specify options in the dialog box

3. 然後會彈出一個 Kutools for Excel 對話框,告訴您已發送了多少封郵件。請點擊「確定」按鈕並關閉「發送電子郵件」對話框。請參見截圖:

click send button to send the emails

注意事項

1. 您可以進入 Outlook 的「已發送郵件」文件夾檢查已發送的郵件。
2. 您也可以通過點擊「發件服務器設置」來使用另一個服務器,將發送模式設置為您自己的。

  如果您想免費試用(30天)此工具,請點擊下載,然後按照上述步驟進行操作。


演示:使用 Kutools for Excel 向單元格中指定的電子郵件地址發送郵件

 

相關文章:

最佳辦公效率工具

🤖 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、Publisher、Access、Visio 和 Project 中啟用標籤式編輯和閱讀。
  • 在同一窗口的新標籤中打開和創建多個文檔,而不是在新窗口中。
  • 將您的生產力提高 50%,每天為您減少數百次鼠標點擊!