Chào các bạn trong diễn đàn Sheet & Excel,
Dạo này mình đang mày mò học Python để tự động hóa một vài tác vụ lặp đi lặp lại trong công việc. Thấy chuyên mục Tin học mở rộng có nhiều bài viết hay về Python nên mình mạnh dạn chia sẻ một chút kinh nghiệm nhỏ này, hy vọng giúp ích được cho anh em nào đang cần xử lý file Excel thường xuyên.
Công việc của mình là hàng tháng phải tạo ra các báo cáo tương tự nhau, chỉ khác ở một vài thông số đầu vào. Thay vì cứ mở file mẫu ra rồi copy-paste, chỉnh sửa từng chút một, mình đã viết một đoạn script Python nhỏ để làm việc này tự động.
Về cơ bản, ý tưởng là:
- Đọc file mẫu Excel (ví dụ:
BaoCaoMau.xlsx). - Sử dụng thư viện
openpyxl(hoặcpandas) để thao tác với file Excel. - Thay đổi các ô dữ liệu cần thiết trong file mẫu (ví dụ: tên khách hàng, ngày tháng, số liệu...).
- Lưu file mới với tên khác (ví dụ:
BaoCao_KhachHangA_Thang10.xlsx).
Ví dụ đoạn code đơn giản để thay đổi một ô:
from openpyxl import load_workbook
# Mở file mẫu
workbook = load_workbook('BaoCaoMau.xlsx')
sheet = workbook.active
# Thay đổi giá trị ô A1
sheet['A1'] = 'Tên khách hàng mới'
# Lưu file mới
workbook.save('BaoCao_Moi.xlsx')Cách này giúp mình tiết kiệm được kha khá thời gian và giảm thiểu sai sót do nhập liệu thủ công. Nếu anh em nào quan tâm sâu hơn về cách đọc dữ liệu từ nguồn khác (ví dụ: file CSV, database) để điền vào mẫu, hoặc xử lý phức tạp hơn thì cứ mạnh dạn hỏi nhé, mình biết tới đâu sẽ chia sẻ tới đó.
Chúc mọi người có những trải nghiệm thú vị với việc tự động hóa!