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.

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

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

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

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

- 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.

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ư.

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

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

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

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

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

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

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

- 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.

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ả)