如何使用 Excel VBA 從 Outlook 發送批量電子郵件

您是否需要向您的 客戶顧客朋友或任何其他聯繫人發送個性化的群發電子郵件?您想通過單擊一下來完成此操作嗎?那是可能的!Microsoft Excel中有一個神奇的工具可以完成所有這些工作。它是 Visual Basic for Applications,又名 Excel VBA

繼續閱讀以了解如何使用 Excel VBAOutlook 發送批量電子郵件。還有更多!您可以按照下面教程中提到的最簡單的步驟進行練習。讓我們深入挖掘吧!

如何使用 Excel VBA 從 Outlook 發送批量電子郵件

發送批量電子郵件所需的準備

當前教程將為您提供從 Excel 自動發送批量電子郵件所需的 VBA 代碼。您所需要做的就是將數據收集到一個 Excel 文件中並執行一些快速格式化。

系統要求

您將運行的 VBA 程序需要使用 Microsoft Outlook 作為電子郵件發送應用程序。因此,您需要在計算機上安裝並配置 Outlook。請注意,基於網頁的 Outlook 程序將無法使用 VBA 代碼。

步驟指導

準備好 Excel 文件和 Outlook 應用程序後,請執行以下步驟:

  1. 將批量電子郵件工作表組織成 6 列。
  2. 在 A1 行中輸入標題:電子郵件至 (A);電子郵件抄送 (B);電子郵件主題 (C);電子郵件正文 (D)、附件 (E)、狀態 (F)。
  3. 在 A 列下添加所有“收件人地址”。如果需要,您可以添加數千封電子郵件。
  4. 在 B 列下輸入“CC 地址”。
  5. 個性化電子郵件主題:在 C 列為每個聯繫人添加自定義電子郵件主題。
  6. 編寫電子郵件正文:將內容複製並粘貼到 D 列下。
  7. 添加附件:將文件附件位置複製並粘貼到 E 列。
  8. 獲取附件位置:按 Shift 並選擇目標文件,然後右鍵單擊選擇 複製為路徑
  9. 將文件地址直接粘貼到 E 列的行中。
  10. F 列留空,因為 VBA 代碼將自動填充狀態。

如何使用 Excel VBA 從 Outlook 發送批量電子郵件

擴展設置

  1. 將 Excel 工作表另存為啟用宏的文件。
  2. Alt+F11 打開 VBA 代碼編輯器。
  3. 在上方菜單中,單擊工具,然後選擇引用
  4. 在列表中查找Microsoft Office 16.0 對象庫並選中該框。
  5. 單擊確定,將 Outlook 保存為 VBA 的對象。

如何使用 Excel VBA 從 Outlook 發送批量電子郵件

  1. 單擊插入,然後選擇模塊以打開代碼編輯器。
  2. 將以下代碼複製粘貼到 Module 中:
    Sub Send_Bulk_Mails()
        Dim sh As Worksheet
        Set sh = ThisWorkbook.Sheets("Worksheet_Name")
        Dim i As Integer
        Dim OA As Object
        Dim msg As Object
        Set OA = CreateObject("outlook.application")
        Dim last_row As Integer
        last_row = Application.CountA(sh.Range("A:A"))
        For i = 2 To last_row
            Set msg = OA.createitem(0)
            msg.To = sh.Range("A" & i).Value
            msg.CC = sh.Range("B" & i).Value
            msg.Subject = sh.Range("C" & i).Value
            msg.Body = sh.Range("D" & i).Value
            If sh.Range("E" & i).Value <> "" Then
                msg.Attachments.Add sh.Range("E" & i).Value
            End If
            msg.Send
            sh.Range("F" & i).Value = "Sent"
        Next i
        MsgBox "所有電子郵件已發送"
    End Sub
    
  1. 在代碼第 3 行(“ Worksheet_Name ”)中輸入當前工作表名稱。
  2. 單擊菜單中的保存以保存腳本。
  3. 您可以按F5運行宏,Excel 將自動通過 Outlook 發送電子郵件。

如何使用 Excel VBA 從 Outlook 發送批量電子郵件

訪問宏

  • 您還可以稍後從 Excel 功能區的“開發人員”選項卡訪問此宏。

結論

現在您已經了解如何使用 Excel VBAOutlook 發送批量電子郵件,您可以輕鬆發送批量電子郵件,而無需在手動發送電子郵件上浪費時間。

想要學習 Excel 的另一個 VBA 技巧嗎?通過本教程,了解如何使用 VBA 在 Excel 中自動進行拼寫檢查

37 Comments

  1. 小琪 -

    作為一個 Excel 的愛好者,我真的很高興看到這樣的內容,感謝分享

  2. 瑋瑋 -

    對於初學者來說,這篇文章非常友好,步驟也清晰易懂,我正打算實踐一下!

  3. 健文 -

    我真的很喜歡這篇文章,學會了之後我的工作效率提升了不少

  4. 咕咕 -

    非常實用的資訊!試過幾次發現批量發送時不小心發錯郵件會很尷尬,有沒有什麼預防的建議呢

  5. 家豪 -

    讀了這篇文章,發現 Excel VBA 有那麼多的潛力!我以前真的沒有想過可以用來發送電子郵件。

  6. 心宇 -

    我一直在找這種方法來簡化我的工作流程,太感謝了!不過有沒有更詳細的步驟呢

  7. Thùy Linh -

    這樣的方法讓我想到以前用 VBA 做的事,真的一定要好好學習

  8. 果果 -

    這篇文章讓我發現了 Excel VBA 的神奇之處,真是太酷了!我會持續關注你!

  9. 護米 -

    在看完這篇之後,我也開始設定自己的批量郵件。感覺自己好厲害

  10. 小玲 -

    這個方法太好用了,謝謝分享!不過有沒有可以用來排程發送的方式呢?

  11. Sky Zhang -

    期待你們將來能出更多的實用教程!這個真的幫助我很多

  12. Mèo Mập -

    這個教學真是太棒了,感覺我現在可以幫同事們省很多時間

  13. 忍者小白 -

    這個功能太像超能力了!我真的感到驚訝,能提高進度

  14. 宇辰 -

    剛剛試了下,完美!這個功能太實用了,適合忙碌的我。同事們都說我太棒了

  15. 雪莉 -

    感謝你的教學!這讓我省下了很多時間!謝謝你分享這個寶貴的經驗!

  16. 洪亨 -

    請問批量發送時,如果想添加附件,應該怎麼設置呢?謝謝

  17. Hương Đà Nẵng -

    這篇文章讓我重燃了學習 VBA 的熱情,簡直是我現在工作的必備工具

  18. 阿力 -

    實用的教學!現在有了這個技巧,我發郵件再也不用手動一封封發了

  19. 小獅子 -

    這裡的內容讓我這個菜鳥也能體會到 VBA 的魅力,感激不盡!

  20. 阿草 -

    實在是太棒了!這篇文章讓我眼前一亮,期待能夠活用在我的項目中!

  21. 季娜 -

    哈哈,這樣的技巧讓我想起剛學習 Excel VBA 時的趣事。真的很懷念

  22. Phúc IT -

    學會這個的確能節省很多時間,期待未來還能看到類似的相關文章

  23. 大寶 -

    剛剛開始學 VBA,希望自己能快點上手,這篇文章幫助很大!

  24. 小芳 -

    這真是一個實用的技巧,尤其對於需要發大量郵件的人來說,感謝分享!

  25. 花花 -

    我覺得這就是我需要的工具,挖掘了它的潛力,發送的速度快了許多

  26. Kenny Wu -

    關於這個話題有一個問題,如何設置郵件的格式?或許你能建議一下?

  27. 正熙 -

    太開心了!使用 VBA 發送郵件省時省力,真的要感謝你們的分享

  28. 潤德 -

    我有一個問題,使用 VBA 的時候,如何避免發送重複的郵件呢?真希望有人能解答

  29. 霏霏 -

    可以討論一下 VLOOKUP 和 VBA 的結合使用嗎?我覺得這樣挺有意思的

  30. 娜娜 -

    這篇文章真是太實用了,我會分享給朋友們讓他們也一起受益!

  31. 阿春 -

    這對我來說實在是太實用的技巧了,以後就省心許多

  32. 小明 -

    這篇文章真的很有價值,學會如何使用 Excel VBA 來批量發送電子郵件,讓我大大提高了工作效率!謝謝分享

  33. 志明 -

    你好,我用你講的方式試了下,發送的郵件順利到達,但還有一些地方不太明白,希望能再推廣一些詳情!

  34. 秋水 -

    這篇文章讓我瞬間理解了 VBA 的概念,原來發郵件也能這麼簡單

  35. Mèo con -

    我也想學習如何使用這個功能,剛好我們團隊有很多郵件要發送,期待作者能再提供更多案例

  36. 健健 -

    如果能有更詳細的視頻教學會更棒!我是一個視覺學習者,感覺會比較好懂

  37. 戈戈 -

    這篇文章讓我找到了一個解決方案,真是太開心了!

Leave a Comment

Microsoft Office Excel 2010:有哪些新功能?

Microsoft Office Excel 2010:有哪些新功能?

Microsoft Office 2010 發布了許多出色功能,我們將持續更新這些最新功能和實用技巧。您可以閱讀一篇總結文章

NK2Edit:編輯 Outlook 自動完成地址快取文件

NK2Edit:編輯 Outlook 自動完成地址快取文件

在發送電子郵件或搜尋聯絡人地址時,Outlook 會根據先前的輸入提供建議。這稱為“自動完成”和 Outlook

Excel 2010:資料驗證列表

Excel 2010:資料驗證列表

當您在資料表上工作並在儲存格中輸入相同類型的資料時,一遍又一遍地輸入相同的資料會變得非常單調。

OneNote 2010:標記指南

OneNote 2010:標記指南

當你需要記住重要內容時,標記就很有用。當你每天做筆記時,標記出重要的內容就變得非常必要。

Office Outlook 2010 匯入與匯出

Office Outlook 2010 匯入與匯出

最近我一直在使用 Microsoft Outlook 2010,幾天前我寫了一個備份 Outlook 2010 的方法。這篇文章

在 Word 2010 插入標題和交叉引用

在 Word 2010 插入標題和交叉引用

當你開始處理一份龐大的文件時,迫切需要為圖片添加標題並插入交叉引用,以便更快地訪問

Excel 2010 刪除行標題與列標題

Excel 2010 刪除行標題與列標題

在共用 Excel 電子表格時,有時您需要隱藏主標題,使其看起來更整潔、更專業。在本文中,我們將教您

Excel 日期和時間轉換器

Excel 日期和時間轉換器

在電子表格中輸入日期和時間值總是非常繁瑣,因為需要遵循一些標準。 Excel 日期/時間轉換器是一款非常有用的插件

記住並返回 Word 文件中最後編輯的行

記住並返回 Word 文件中最後編輯的行

透過建立一個簡單的宏,現在可以更輕鬆地在 Microsoft Word 中尋找上次編輯的行。現在,您可以從上次編輯的行開始

Outlook 2010 進階搜尋 [查詢產生器]

Outlook 2010 進階搜尋 [查詢產生器]

在 Outlook 2010 中,當您被大量電子郵件淹沒並且您的收件匣中堆滿了垃圾郵件內容時,搜尋