Chào các anh em trong diễn đàn Sheet & Excel!
Dạo này mình có công việc cần tạo ra rất nhiều file Excel mới, mỗi file đều dựa trên một file mẫu có sẵn nhưng cần điền dữ liệu khác nhau vào. Làm thủ công với 50-100 file mỗi ngày thì thực sự tốn thời gian và dễ sai sót.
Sau một thời gian tìm hiểu, mình đã tìm ra cách dùng Python để tự động hóa hoàn toàn quá trình này. Về cơ bản, mình sẽ đọc dữ liệu từ một nguồn khác (ví dụ: file CSV, database, hoặc thậm chí là một file Excel khác), sau đó sử dụng một file Excel mẫu đã định dạng sẵn, chèn dữ liệu vào các ô tương ứng, và lưu lại dưới dạng một file Excel mới.
Cách này rất hữu ích cho các bạn làm báo cáo định kỳ, tạo hóa đơn hàng loạt, hoặc bất kỳ công việc nào cần tạo nhiều file Excel có cấu trúc tương tự nhau.
Các bước chính mình thực hiện bao gồm:
- Sử dụng thư viện
openpyxlđể làm việc với file Excel. - Đọc dữ liệu cần điền vào file mẫu.
- Mở file mẫu, sao chép cấu trúc (hoặc chỉ ghi đè lên các ô cần thiết).
- Ghi dữ liệu đã đọc vào các ô tương ứng trong file mới.
- Lưu file Excel mới với tên khác nhau.
Ví dụ, nếu bạn có một file mẫu MauBaoCao.xlsx với các ô đã định dạng sẵn, và bạn có một file DuLieu.csv chứa thông tin cần điền, bạn có thể viết một đoạn code Python ngắn gọn để tạo ra các báo cáo cho từng dòng dữ liệu trong DuLieu.csv.
Ai quan tâm đến cách làm chi tiết hoặc có tình huống tương tự cần xử lý thì cùng thảo luận nhé!