Computer >> Hướng Dẫn Máy Tính >  >> Phần Mềm >> Office

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

Chúng ta lưu trữ nhiều loại thông tin trong bảng tính Excel, ví dụ địa chỉ Email của khách hàng hoặc đối tác. Khi làm việc với Microsoft Excel, đôi khi cần gửi Email dựa trên nội dung ô. Thông thường gửi email từ Outlook hoặc Gmail rất dễ dàng, nhưng khi muốn tự động hóa dựa trên dữ liệu ô, Excel là công cụ hiệu quả. Bài viết này giới thiệu 2 cách nhanh chóng để gửi email tự động từ Excel dựa trên nội dung ô.

2 Cách phù hợp gửi email tự động từ Excel dựa trên nội dung ô

Giả sử có bảng tính lớn chứa thông tin các nhân viên bán hàng của Nhóm Armani. Cột B, C, D, E lần lượt là: Tên nhân viên, Mã số định danh, Loại sản phẩm, Doanh thu. Chúng ta sẽ gửi email tự động dùng lệnh Mail Merge trong MS Word và VBA Macro.

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

1. Chạy mã VBA để gửi email tự động dựa trên giá trị ô

Sử dụng mã VBA đơn giản để gửi email tự động khi giá trị ô thỏa mãn điều kiện. Ví dụ: gửi email khi ô D6 > 400.

Bước 1: Mở cửa sổ VBA

  • Tab Developer (Nhà phát triển) → Visual Basic.

Developer → Visual Basic

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

  • Cửa sổ Microsoft Visual Basic for Applications xuất hiện. Chọn Insert → Module để chèn module mới.

Insert → Module

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

Bước 2: Viết mã VBA

Trong module Send Mail from Excel, dán mã sau:

Dim R As Range
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Target.Cells.Count > 1 Then Exit Sub
    Set R = Intersect(Range("D6"), Target)
    If R Is Nothing Then Exit Sub
    If IsNumeric(Target.Value) And Target.Value > 400 Then
        Call send_mail_outlook
    End If
End Sub

Sub send_mail_outlook()
    Dim x As Object
    Dim y As Object
    Dim z As String
    Set x = CreateObject("Outlook.Application")
    Set y = x.CreateItem(0)
    z = "Hello!" & vbNewLine & vbNewLine & _
        "Hope you are well" & vbNewLine & _
        "Visit our Exceldemy site"
    On Error Resume Next
    With y
        .To = "Address"
        .cc = ""
        .BCC = ""
        .Subject = "send mail based on cell value"
        .Body = z
        .Display
    End With
    On Error GoTo 0
    Set y = Nothing
    Set x = Nothing
End Sub

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

  • Chạy mã: Run → Run Sub/UserForm (hoặc nhấn F5).

Run → Run Sub/UserForm

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

  • Kết quả: Khi giá trị ô D6 > 400, cửa sổ soạn thư Outlook tự động mở với người nhận, chủ đề, nội dung đã định sẵn. Chỉ cần nhấn Send.

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

Xem thêm: Cách gửi email tự động khi điều kiện đáp ứng trong Excel

Các bài đọc tương tự

  • Gửi email nhắc nhở tự động từ trang tính Excel bằng VBA
  • [Đã giải quyết]: Share Workbook không hiển thị trong Excel (các bước dễ dàng)
  • Cách xem ai đang chia sẻ file Excel (với các bước nhanh)
  • Gửi email hàng loạt từ Outlook dùng Excel (3 cách)
  • Cách áp dụng Macro gửi email từ Excel kèm tệp đính kèm

2. Sử dụng lệnh Mail Merge trong Word để gửi email tự động từ Excel

Phương pháp này dùng MS Word và tính năng Mail Merge để gửi nhiều email từ bảng tính Excel.

Bước 1: Chuẩn bị dữ liệu nguồn

  • Mở file Word, soạn thảo nội dung thư.

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

  • Tab Mailings (Thư) → Select Recipients → Use an Existing List.

Mailings ➤ Select Recipients ➤ Use an Existing List

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

  • Hộp thoại Select Data Source: chọn file Excel chứa địa chỉ email → Open.

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

  • Hộp thoại Select Table: chọn sheet chứa dữ liệu → OK.

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

Bước 2: Chèn trường hợp nhất (Merge Field)

  • Chọn từ cần thay thế cho mỗi email (ví dụ: tên "Carl").
  • Tab Mailings → Write & Insert Fields → Insert Merge Field → chọn trường Sales_Rep.

Mailings → Write & Insert Field → Insert Merge Field → Sales_Rep

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

  • Tên người nhận đã được chèn vào thư.

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

  • Xem trước thư: nhấn Preview Results.

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

Bước 3: Hoàn tất và gửi

  • Tab Mailings → Finish → Finish & Merge → Send Email Messages.

Mailing → Finish → Finish & Merge → Send Email Messages

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

  • Hộp thoại Merge to E-mail: chọn trường Sales_Rep cho mục To, nhập Subject line (ví dụ: "Greetings") → OK.

Gửi email tự động từ Excel dựa trên dữ liệu ô – 2 phương pháp đã chứng minh

Các email sẽ được gửi đến tất cả người nhận trong danh sách.

Xem thêm: Cách gửi file Excel đến email tự động (3 phương pháp phù hợp)

Lưu ý quan trọng

  • 👉 Mở cửa sổ Microsoft Visual Basic for Applications nhanh bằng phím tắt Alt + F11.
  • 👉 Nếu tab Developer không hiển thị: File → Options → Customize Ribbon → đánh dấu Developer.

Kết luận

Hai phương pháp trên (VBA và Mail Merge) giúp tự động hóa gửi email từ Excel dựa trên dữ liệu ô hiệu quả. Hãy áp dụng vào công việc để nâng cao năng suất. Mọi thắc mắc, hãy để lại bình luận.

Bài viết liên quan

  • Cách gửi email nếu điều kiện đáp ứng trong Excel (3 phương pháp dễ dàng)
  • Cách gửi email từ Excel với nội dung thư dùng Macro (các bước dễ dàng)
  • Excel Macro: Gửi email đến địa chỉ trong ô (2 cách dễ dàng)
  • Cách tự động gửi email từ Excel dựa trên ngày tháng
  • Macro gửi email từ Excel với nội dung thư (3 trường hợp hữu ích)
  • Cách gửi email từ danh sách Excel (2 cách hiệu quả)