Menu

App script quản lý rủi ro cho cá nhân & doanh nghiệp với báo cáo chuẩn định dạng biểu đồ

Tự động hóa gửi báo cáo Excel hàng tháng bằng Python và Outlook - Chia sẻ kinh nghiệm

Ôn Đăng Uyển 09/04/2026 12:25 312 lượt xem 2 trả lời

Chào mọi người,

Dạo này công việc của mình liên quan nhiều đến việc gửi báo cáo Excel định kỳ hàng tháng. Thay vì làm thủ công từng lần, mình đã tìm hiểu và áp dụng Python để tự động hóa hoàn toàn quy trình này. Hôm nay mình muốn chia sẻ lại kinh nghiệm này với mọi người, hy vọng sẽ giúp ích cho các bạn đang gặp tình huống tương tự.

Vấn đề: Gửi báo cáo Excel hàng tháng cho nhiều người nhận, đôi khi cần đính kèm file Excel đã được xử lý/tổng hợp dữ liệu.

Giải pháp: Sử dụng Python kết hợp với thư viện pywin32 để tương tác với Outlook.

Các bước thực hiện chính:

  • Chuẩn bị file Excel báo cáo (có thể là file có sẵn hoặc được tạo ra bởi một script Python khác).
  • Viết script Python để mở Outlook, tạo một email mới, thêm người nhận (To, CC, BCC), nhập tiêu đề, nội dung email.
  • Đính kèm file Excel báo cáo vào email.
  • Gửi email tự động.

Ví dụ code đơn giản (minh họa):

import win32com.client as win32
import os

# Đường dẫn đến file Excel báo cáo
file_path = r"C:\path\to\your\report.xlsx"

# Thông tin email
subject = "Báo cáo hàng tháng - " + os.path.basename(file_path).split('.')[0]
body_content = "

Kính gửi Quý vị,

Vui lòng xem file báo cáo đính kèm.

Trân trọng,

" recipients = "recipient1@example.com; recipient2@example.com" # Khởi tạo Outlook application outlook = win32.Dispatch('Outlook.Application') mail = outlook.CreateItem(0) # 0 Represents an Email # Thiết lập thông tin email mail.To = recipients mail.Subject = subject mail.HTMLBody = body_content # Đính kèm file mail.Attachments.Add(file_path) # Gửi email mail.Send() print("Email đã được gửi thành công!")

Lưu ý:

  • Bạn cần cài đặt Outlook trên máy tính và tài khoản email đã được cấu hình.
  • Đảm bảo đường dẫn file file_path là chính xác.
  • Có thể tùy biến nội dung email và danh sách người nhận theo nhu cầu.

Mình thấy cách này rất tiện lợi và tiết kiệm thời gian đáng kể. Mọi người có ý kiến hay phương pháp nào khác thì chia sẻ thêm nhé!

0
Hay quá bạn ơi! Mình cũng đang đau đầu vụ gửi báo cáo hàng tháng đây. Python và Outlook nghe có vẻ là giải pháp rất hay. Bạn có thể chia sẻ cụ thể hơn về các bước thực hiện không? Ví dụ như làm sao để Python đọc được file Excel, xử lý dữ liệu (nếu có) rồi tự động gửi email đính kèm file không ạ? Mình đang rất tò mò muốn học hỏi thêm.
3

Hay quá bạn ơi! Mình cũng đang đau đầu vụ gửi báo cáo hàng tháng đây. Python và Outlook nghe có vẻ là giải pháp rất hay. Bạn có thể chia sẻ cụ thể hơn về các bước thực hiện không? Ví dụ như làm sao để Python đọc được file Excel, xử lý dữ liệu (nếu có) rồi tự động gửi email đính kèm file không ạ? Mình đang rất tò mò muốn học hỏi thêm.

4

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký