Tự động hoá báo cáo Excel bằng AI Agent: xây theo 4 lớp
Có một khoảng cách lớn giữa hai việc nghe rất giống nhau:
- Nhờ AI viết báo cáo — bạn dán số liệu vào, AI viết cho bạn đoạn nhận xét. Xong một lần. Tuần sau làm lại từ đầu.
- Để AI Agent làm báo cáo — bạn mô tả quy trình một lần, sau đó nó tự lấy dữ liệu, tự tính, tự viết, tự gửi, tự lưu. Tuần sau bạn không phải nhớ gì cả.
Khoảng cách đó chính là nội dung bài này. Và cách nhanh nhất để đi hết khoảng cách ấy là xây theo bốn lớp, không phải xây cả báo cáo một lần.
1. Vì sao phải chia thành 4 lớp?
Vì bốn lớp này hỏng theo bốn kiểu khác nhau, và cách sửa cũng khác nhau:
| Lớp | Hỏng thì biểu hiện thế nào | Sửa ở đâu |
|---|---|---|
| 1. Dữ liệu | Số sai, thiếu dòng, hoặc lấy nhầm kỳ | Quy tắc chọn nguồn và lọc dòng |
| 2. Logic | Số đúng nhưng tính sai chỉ số | Quy tắc tính và công thức |
| 3. Trình bày | Đúng số nhưng đọc lên vô nghĩa | Mẫu, độ dài, cách viết nhận xét |
| 4. Phân phối | Đúng hết nhưng gửi sai người, sai lúc | Danh sách nhận, lịch chạy, bước duyệt |
Khi ai đó nói "báo cáo tự động của tôi chạy sai", gần như luôn luôn là một trong bốn lớp này. Nếu bạn xây theo lớp và kiểm từng lớp một, bạn sẽ biết ngay cần sửa chỗ nào thay vì đoán mò.
Thứ tự xây đúng là theo số thứ tự: dữ liệu trước, logic sau, rồi mới tới trình bày và phân phối. Nhiều người làm ngược — bắt đầu từ phần trình bày vì đó là phần nhìn thấy được. Đó cũng là lý do họ phải sửa đi sửa lại.
2. Lớp 1 — Dữ liệu: năm câu hỏi phải trả lời được
Đây là lớp quyết định 80% thành bại. Bạn cần chốt năm điều trước khi làm bất cứ việc gì khác:
Một — dữ liệu nằm ở đâu, tên chính xác là gì? Không phải "trên Drive" mà là tên file, tên sheet, và đường dẫn thư mục. Nếu bạn không ghi ra được, agent cũng không đoán được.
Hai — cột nào dùng để tính? Và quan trọng hơn: gọi theo tên cột, đừng gọi theo vị trí. Chuyện có người thêm một cột vào bảng sẽ xảy ra, chỉ là sớm hay muộn. Gọi theo tên thì agent hoặc làm đúng, hoặc báo không tìm thấy — cả hai đều là kết quả tốt.
Ba — kỳ báo cáo tính như thế nào? Tuần lễ theo lịch hệ thống thường khác tuần lễ theo nghiệp vụ của bạn. Nếu báo cáo của bạn tính từ thứ Hai, hãy ghi rõ điều đó. Đây là lỗi âm thầm phổ biến nhất: báo cáo "đúng" nhưng lệch một ngày.
Bốn — dòng nào phải loại? Dòng tổng cộng nằm lẫn trong dữ liệu, dòng không có mã, dòng trùng do nhập hai lần. Ba loại này gây sai số nhiều nhất và cũng dễ lọc nhất.
Năm — có ai khác cùng sửa file đó không? Nếu có, bạn cần giờ chốt dữ liệu: ví dụ agent chỉ đọc sau 6 giờ sáng, khi mọi người đã nhập xong ngày hôm trước.
Năm câu này không cần dùng tới AI. Nhưng nếu bỏ qua, bạn sẽ mất vài tuần sau đó để sửa những thứ đáng ra chỉ mất một buổi.
3. Lớp 2 — Logic: quy tắc tính và ngưỡng cảnh báo
Lớp này gồm hai phần: cách tính, và cách phát hiện cái bất thường.
Phần tính toán
Hãy viết ra bằng lời, không phải bằng công thức bảng tính. Ví dụ: "tổng doanh số bằng tổng cột Giá trị của các dòng trong 7 ngày gần nhất, không tính dòng có giá trị âm". Viết bằng lời giúp bạn phát hiện những quy tắc ngầm mà bạn vẫn làm theo thói quen nhưng chưa từng nói ra.
Điều đáng chú ý: phần lớn lỗi ở lớp này không phải do tính sai, mà do quy tắc ngầm chưa được viết ra. Ví dụ bạn vẫn luôn loại các đơn hàng huỷ khỏi doanh thu — nhưng chưa bao giờ ghi điều đó ở đâu. Agent sẽ tính cả đơn huỷ, và bạn sẽ mất vài tuần để phát hiện.
Ba quy tắc ngầm hay bị bỏ sót nhất, theo thứ tự phổ biến:
Một — loại đơn huỷ và đơn hoàn tiền. Gần như mọi báo cáo doanh thu đều phải loại hai loại đơn này, nhưng người làm thường không coi đó là một bước vì họ tự động loại trong đầu.
Hai — gộp các mã sản phẩm cùng nhóm. Bạn vẫn gộp thủ công khi nhìn thấy, nhưng chưa bao giờ định nghĩa nhóm nào gồm những mã nào. Nếu không viết ra, agent sẽ báo cáo từng mã riêng lẻ và bảng sẽ dài gấp nhiều lần.
Ba — làm tròn theo quy ước của công ty. Có nơi làm tròn tới hàng nghìn, có nơi giữ nguyên đơn vị. Nếu bạn không nói, agent sẽ tự chọn một cách và bạn sẽ phải sửa ở mọi báo cáo sau đó.
Một mẹo để tìm hết quy tắc ngầm: mở một báo cáo cũ bạn đã làm, rồi tự hỏi với từng con số: tại sao con số này khác với tổng thô trong bảng? Mỗi câu trả lời là một quy tắc cần viết vào mô tả.
Phần ngưỡng cảnh báo
Đây là phần nâng cấp giá trị của báo cáo: từ một bản tổng kết thành một công cụ phát hiện vấn đề.
Quy tắc vàng: ngưỡng phải là con số, không phải tính từ. Nếu bạn nói "báo tôi khi có gì bất thường", mỗi tuần agent sẽ hiểu một khác. Nếu bạn nói "báo khi kênh nào lệch trên 30% so với tuần trước, hoặc có đơn lớn hơn ba lần trung bình bốn tuần", kết quả sẽ nhất quán.
Ba ngưỡng thường dùng nhất cho báo cáo kinh doanh:
- Ngưỡng so sánh kỳ trước — phát hiện thay đổi bất thường về mức.
- Ngưỡng so với trung bình nhiều kỳ — phát hiện một con số vượt xa thói quen.
- Ngưỡng tuyệt đối — phát hiện một giao dịch lớn bất thường cần kiểm tra ngay.
Ba ngưỡng này chồng lên nhau sẽ bắt được phần lớn sai sót nhập liệu — loại lỗi mà nếu không có ngưỡng, báo cáo vẫn chạy đúng kỹ thuật nhưng kết luận sai.
4. Lớp 3 — Trình bày: làm sao nhận xét không bị chung chung
Đây là lớp nhiều người thất vọng nhất: số đúng, nhưng phần nhận xét đọc lên nghe như không nói gì. Nguyên nhân không phải AI kém — mà là bạn chưa ràng buộc cách viết.
Bốn ràng buộc nên đưa vào mô tả:
- Buộc nêu số. Mỗi câu nhận xét phải có ít nhất một con số cụ thể.
- Cấm từ ngữ chung. Không dùng những cụm như tích cực, khả quan, cần theo dõi thêm, có dấu hiệu cải thiện.
- Giới hạn số câu. Ví dụ tối đa năm câu; câu nào không có số thì bỏ.
- Buộc nêu điểm không chắc. Nếu có dữ liệu đáng ngờ, phải liệt kê mã đơn cụ thể và nói rõ cần kiểm tra.
Để thấy khác biệt, so hai phiên bản của cùng một tuần:
Kiểu chung chung: Doanh số tuần này có sự tăng trưởng tích cực so với tuần trước, cho thấy tình hình kinh doanh đang được cải thiện. Cần tiếp tục theo dõi trong các tuần tới.
Kiểu đạt yêu cầu: Tổng doanh số đạt 412 triệu, tăng 12% so với tuần trước (368 triệu). Mức tăng tập trung ở kênh Online (+31%), trong khi kênh cửa hàng giảm 4%. Ba đơn có giá trị bất thường cần kiểm tra: A1234, A1288, A1310.
Bản thứ hai gây khó chịu hơn khi đọc, vì nó nói thẳng điều cần kiểm tra. Nhưng đây mới là bản giúp bạn ra quyết định. Khi thiết kế agent, hãy chọn hướng làm bạn khó chịu nhưng hữu ích, không phải hướng đọc lên dễ nghe.
5. Lớp 4 — Phân phối: người nhận, lịch, duyệt, lưu
Lớp cuối, và cũng là lớp hay bị xây ẩu nhất vì mọi người coi đó là phần phụ.
Người nhận. Danh sách cố định, ghi rõ trong mô tả. Đừng để agent tự thêm người nhận — kể cả khi nó thấy hợp lý.
Lịch chạy. Chạy sớm hơn giờ cần khoảng 15 đến 30 phút để còn thời gian bạn đọc bản nháp. Và đừng đặt nhiều agent chạy cùng lúc: nếu một bước lỗi, bạn sẽ khó biết lỗi ở đâu.
Bước duyệt. Trong hai đến bốn tuần đầu, mọi thứ đi ra ngoài đều phải qua bạn. Sau đó bạn có thể nới dần, nhưng chỉ với những báo cáo đã chạy đúng liên tục và ít rủi ro.
Lưu trữ. Quy tắc đặt tên file và thư mục theo tháng. Có quy tắc này bạn tìm lại được báo cáo của sáu tháng trước trong vài giây; không có thì phải mở từng file ra xem.
Log. Một dòng mỗi lần chạy, gồm bốn thông tin: thời điểm chạy, số dòng dữ liệu đọc, số dòng bị loại, số cờ bất thường đã gắn. Bốn thông tin này trả lời được gần như mọi câu hỏi khi có vấn đề.
6. Lắp ráp: mô tả hoàn chỉnh trông như thế nào?
Ghép bốn lớp lại, mô tả agent báo cáo tuần sẽ như sau:
Mục tiêu. Lúc 7:30 sáng thứ Hai, có báo cáo doanh số tuần gửi cho ba người nhận, đồng thời lưu bản PDF vào thư mục theo tháng.
Nguồn dữ liệu. Bảng Doanh số 2026, tab Raw. Dùng cột Ngày, Mã đơn, Giá trị, Kênh. Chỉ đọc dữ liệu đã nhập xong trước 6 giờ sáng.
Các bước. Lấy 7 ngày gần nhất theo quy tắc tuần từ thứ Hai đến Chủ nhật → loại dòng không có mã đơn, dòng trùng mã, dòng có giá trị âm → tính tổng theo kênh → so sánh với tuần trước → gắn cờ theo ba ngưỡng đã định → viết nhận xét theo bốn ràng buộc → xuất PDF → gửi mail → lưu trữ.
Định dạng đầu ra. Tối đa năm câu nhận xét, mỗi câu có ít nhất một con số. Bảng tổng hợp theo kênh. Tên file bao-cao-tuan-DD-MM-YYYY.pdf.
Ngưỡng. Kênh lệch trên 30% so với tuần trước. Đơn lớn hơn ba lần trung bình bốn tuần. Tổng số dòng đọc giảm hơn 30% so với tuần trước (dấu hiệu thiếu dữ liệu).
Kiểm soát. Gửi bản nháp cho tôi lúc 7:30 để duyệt; chỉ gửi chính thức khi tôi xác nhận. Ghi log bốn thông tin sau mỗi lần chạy.
Toàn bộ mô tả này dài chưa tới một trang. Viết lần đầu mất khoảng hai mươi phút, và từ đó chỉ chỉnh khi quy trình thay đổi.
7. Ba vòng chạy thử: mỗi vòng sửa gì?
Vòng 1 — kiểm lớp 1 và 2. Cho chạy với dữ liệu thật, so số với bản bạn làm tay. Nếu số lệch, đừng động vào phần nhận xét. Lệch số hầu như luôn là chuyện chọn dòng hoặc chọn kỳ, tức là lớp 1 và 2.
Vòng 2 — kiểm lớp 3. Khi số đã khớp, mới đọc phần nhận xét. Nếu nhận xét chung chung, thêm hoặc siết bốn ràng buộc. Nếu nhận xét dài dòng, giảm số câu tối đa.
Vòng 3 — kiểm lớp 4. Kiểm tra định dạng file, tên file, nơi lưu, danh sách người nhận. Đây là vòng cuối trước khi đặt lịch tự động.
Chạy đúng thứ tự này giúp bạn không phải sửa đi sửa lại. Ngược lại, nếu vừa thấy số sai đã đi chỉnh câu chữ, bạn sẽ mất gấp ba thời gian.
8. Sáu tình huống dữ liệu và quy tắc cần thêm
| Nếu bạn thấy | Thì thêm quy tắc |
|---|---|
| Tổng bị gấp đôi | Loại dòng không có mã đơn; ghi lại số dòng đã loại |
| Một kỳ nào đó lệch hẳn | Chuẩn hoá ngày về một định dạng; cảnh báo nếu nhiều dòng không khớp mẫu |
| Tổng bằng 0 | Kiểm tra cột giá trị có bị lưu dạng văn bản; cảnh báo thay vì gửi báo cáo rỗng |
| Doanh số tăng vọt bất thường | Đếm mã đơn trùng và loại bản trùng, ghi log |
| Một khách bị tách thành hai | Loại khoảng trắng đầu cuối trước khi so khớp |
| Số dòng đọc giảm mạnh | Đặt ngưỡng cảnh báo: giảm hơn 30% thì báo cho bạn kiểm tra nguồn |
Điểm chung: không quy tắc nào cho phép agent tự sửa dữ liệu gốc. Nó chỉ phát hiện, gắn cờ và ghi log. Việc sửa là của bạn, và phải để lại dấu vết.
9. Khi báo cáo sai: truy ngược trong 10 phút
Đây là quy trình tôi khuyên dùng khi có sự cố. Đi từ lớp 4 về lớp 1, không nhảy cóc:
- Có log không? Nếu không có log, đó là vấn đề đầu tiên cần sửa — không phải chuyện báo cáo sai.
- Lần chạy đó có thành công không? Log ghi rõ thời điểm; nếu không có dòng nào thì agent chưa chạy hoặc chạy lỗi.
- Số dòng đọc có bình thường không? Giảm mạnh nghĩa là nguồn dữ liệu có vấn đề.
- Số dòng bị loại có bình thường không? Tăng vọt nghĩa là quy tắc lọc đang loại nhầm thứ gì đó.
- Số cờ bất thường có được gắn không? Nếu có cờ mà bạn không thấy, nghĩa là bước duyệt đang bị bỏ qua.
- So với mẫu chuẩn. Cuối cùng mới so nội dung với bản bạn từng làm tay.
Sáu bước này mất khoảng mười phút và chỉ ra đúng lớp nào hỏng. Không có log thì bạn sẽ mất vài giờ — và thường là vẫn không biết vì sao.
10. Bảo trì hằng tháng: 15 phút để hệ thống không chết
Báo cáo tự động không hỏng đột ngột, nó chết dần. Một nghi thức 15 phút mỗi tháng giữ nó sống:
- Tự làm tay một lần và so kết quả. Nghe có vẻ thừa, nhưng đây là cách duy nhất phát hiện lệch âm thầm.
- Đọc lại log của bốn lần chạy gần nhất. Nhìn xu hướng số dòng đọc và số dòng bị loại.
- Kiểm tra danh sách người nhận. Nhân sự thay đổi, email cũ không còn dùng.
- Rà lại các quy tắc ngầm mới phát sinh. Mỗi tháng công việc của bạn thường có thêm một quy tắc mới mà bạn chưa viết ra.
- Cập nhật mô tả nếu quy trình đổi. Cập nhật ngay trong tuần đó, đừng để sang tháng sau.
Mười lăm phút này rẻ hơn rất nhiều so với việc phát hiện báo cáo sai sau ba tháng.
Khi nào KHÔNG nên tự động hoá báo cáo?
Có ba trường hợp nên giữ làm tay, ít nhất là ở giai đoạn này:
Khi báo cáo có thay đổi lớn mỗi kỳ. Nếu mỗi tháng bạn phải trình bày theo một khung khác nhau — vì yêu cầu của ban lãnh đạo thay đổi, vì dự án đang trong giai đoạn chuyển — thì mỗi kỳ lại là một báo cáo mới. Tự động hoá lúc này chỉ tạo ra một công cụ bạn phải sửa liên tục.
Khi báo cáo là công cụ đánh giá con người. Báo cáo hiệu suất cá nhân, xếp hạng nhân sự — đây là loại tài liệu mà quá trình làm cũng quan trọng như kết quả. Một báo cáo sinh tự động dễ khiến người đọc cảm thấy bị đánh giá bằng máy.
Khi dữ liệu đầu vào chưa ổn định. Nếu nguồn dữ liệu còn đang thay đổi cấu trúc mỗi tháng, hãy chờ nó ổn định rồi mới tự động hoá. Ngược lại, bạn sẽ dành thời gian sửa mô tả thay vì dùng kết quả.
11. Câu hỏi thường gặp
Hỏi: Tôi dùng Excel trên máy, không dùng Google Sheets thì làm được không?
Đáp: Được. Cách phổ biến là để file Excel được đồng bộ lên Drive ở dạng bảng tính, hoặc xuất ra bảng tính mỗi tuần. Nếu buộc phải giữ file cục bộ, vẫn làm được nhưng phần cài đặt sẽ vất vả hơn.
Hỏi: Tôi không biết code, có tự làm được không?
Đáp: Được. Toàn bộ công việc trong bài này là nối dữ liệu, mô tả quy tắc bằng tiếng Việt và đặt lịch. Không có bước nào cần viết code.
Hỏi: Số liệu nội bộ giao cho AI có an toàn không?
Đáp: Áp dụng nguyên tắc tối thiểu: chỉ cấp quyền đọc đúng nguồn cần thiết, dùng tài khoản riêng cho công việc, và luôn giữ bước duyệt của con người. Với dữ liệu đặc biệt nhạy cảm, nên hỏi người phụ trách trước khi tự động hoá.
Hỏi: Bao lâu thì báo cáo chạy ổn định?
Đáp: Thường ba vòng chạy thử, tương ứng khoảng hai đến ba tuần nếu bạn làm theo thứ tự bốn lớp. Việc mất nhiều thời gian nhất là lớp 1, không phải lớp 3.
Hỏi: Nếu tôi nghỉ phép thì báo cáo có chạy không?
Đáp: Có, đó là lợi ích rõ nhất. Nhưng hãy quyết định trước: tuần đó cho tự gửi hay tạm dừng, và báo trước cho người nhận rằng không có ai duyệt bản nháp.
Hỏi: Học cách làm này ở đâu?
Đáp: Đây là một trong những nội dung thực hành của Bootcamp Claude – Làm Chủ AI Agent cho Công Việc & Code: bạn làm trực tiếp trên file báo cáo thật của mình, có người gỡ lỗi tại lớp, và cam kết đầu ra là ít nhất 3 workflow/agent chạy thật.
Hỏi: Nếu bảng dữ liệu của tôi thêm cột hoặc đổi tên cột thì sao?
Đáp: Đây là lý do phải gọi cột theo tên chứ không theo vị trí. Khi cột đổi tên, agent sẽ báo không tìm thấy thay vì lấy nhầm số — đó là kết quả bạn muốn: dừng lại và báo, chứ không âm thầm sai.
Hỏi: Báo cáo của tôi có nhiều chỉ số, agent có làm được hết không?
Đáp: Được, nhưng đừng bắt đầu như vậy. Hãy làm đủng một chỉ số trước, cho nó chạy đúng vài kỳ, rồi mới thêm chỉ số tiếp theo. Thêm từng chỉ số giúp bạn biết chỗ nào sai khi số lệch.
12. Kết: giá trị nằm ở tuần thứ hai trở đi
Tuần đầu tiên bạn tự động hoá báo cáo, bạn sẽ thấy mất thời gian — vì phải dọn dữ liệu, viết quy tắc, chạy thử ba vòng. Đó là khoản đầu tư một lần.
Từ tuần thứ hai trở đi, mỗi sáng thứ Hai bạn chỉ mở bản nháp, đọc, xác nhận, xong. Giá trị không nằm ở lần chạy đầu tiên mà ở lần chạy thứ hai mươi, thứ năm mươi — khi bạn không còn phải nhớ báo cáo tuần là việc gì.
Và thứ bạn học được không dừng ở báo cáo. Cách chia một quy trình thành bốn lớp, cách đặt ngưỡng bằng con số, cách viết mô tả để máy hiểu — những thứ đó áp dụng được cho mọi công việc lặp lại khác.
🎓 Bootcamp Claude – Làm Chủ AI Agent cho Công Việc & Code 6 buổi × 2 giờ · Online Zoom · 2 track (no-code & Claude Code) · cam kết đầu ra ≥3 workflow/agent chạy thật Khai giảng 20h Thứ 2, 12/10/2026 — học phí 990.000đ, ưu đãi còn 690.000đ cho 20 chỗ đầu, tặng kèm phần mềm DNT Digital SaaS FindMe VPS Guardian 12 tháng. Xem chương trình: https://dntdigi.com/khoa-hoc/bootcamp-claude-ai-agent Lịch khai giảng & đăng ký: https://dntdigi.com/lich-khai-giang#thang-10-2026 Zalo tư vấn: 0934 145 100
Weekly Digest — Nhận Bản Tin Hàng Tuần
Nhận các bài viết phân tích kỹ thuật chuyên sâu, thuật toán giao dịch tự động (Trading Bot) và các giải pháp công nghệ mới nhất từ Hướng Nghiệp Dữ Liệu.
