Menu

Tự động hóa xử lý báo cáo Excel với Python: Chia sẻ script tự động tạo biểu đồ

Khúc Kế Khoa 03/06/2026 19:27 99 lượt xem 3 trả lời

Chào mọi người,

Dạo này mình đang làm việc với Python để tự động hóa các tác vụ Excel và muốn chia sẻ một script nhỏ giúp tự động tạo biểu đồ từ dữ liệu có sẵn. Hy vọng sẽ hữu ích cho anh em nào đang cần xử lý báo cáo Excel thường xuyên.

Chuyện là mình có một file Excel chứa dữ liệu bán hàng theo tháng. Mỗi tháng lại có một sheet riêng, và mình cần tạo biểu đồ để so sánh doanh thu giữa các tháng. Làm thủ công thì mất thời gian mà dễ sai sót.

Mình đã viết một đoạn script Python sử dụng thư viện pandasmatplotlib để giải quyết vấn đề này. Script sẽ đọc dữ liệu từ các sheet, tổng hợp lại và tự động vẽ biểu đồ cột thể hiện doanh thu từng tháng.

Đây là đoạn code chính:

import pandas as pd
import matplotlib.pyplot as plt

# Đọc dữ liệu từ file Excel
df = pd.read_excel('du_lieu_ban_hang.xlsx', sheet_name=None)

# Khởi tạo DataFrame để lưu trữ tổng hợp
data_tong_hop = pd.DataFrame()

# Lặp qua từng sheet để lấy dữ liệu
for ten_sheet, data_sheet in df.items():
    # Giả sử cột chứa doanh thu là 'Doanh thu'
    doanh_thu_thang = data_sheet['Doanh thu'].sum()
    data_tong_hop = data_tong_hop.append({'Thang': ten_sheet, 'Doanh thu': doanh_thu_thang}, ignore_index=True)

# Vẽ biểu đồ
plt.figure(figsize=(10, 6))
plt.bar(data_tong_hop['Thang'], data_tong_hop['Doanh thu'], color='skyblue')
plt.xlabel('Tháng')
plt.ylabel('Doanh thu')
plt.title('Biểu đồ doanh thu theo tháng')
plt.xticks(rotation=45)
plt.tight_layout()
plt.savefig('bieu_do_doanh_thu.png') # Lưu biểu đồ thành file ảnh
plt.show()

Anh em nào cần xử lý tương tự hoặc muốn tùy biến thêm (ví dụ: chọn loại biểu đồ khác, thêm nhãn dữ liệu...) thì có thể tham khảo nhé. Nếu có cách nào hay hơn thì cùng thảo luận ạ!

5

Hay quá bạn ơi! Mình cũng đang tìm hiểu về Python để làm Excel đây.

Script của bạn có dùng thư viện nào khác ngoài pandas không? Mình đang thử dùng openpyxl để thao tác trực tiếp với file Excel và tạo biểu đồ, nhưng thấy hơi lằng nhằng. Nếu có cách nào hay ho hơn thì chia sẻ thêm nhé!

2

Tuyệt vời! Mình rất thích cách bạn dùng Python để tự động hóa việc tạo biểu đồ. Việc xử lý báo cáo Excel thủ công đúng là tốn thời gian thật.

Script của bạn có phần nào khó hiểu không? Mình đang tìm hiểu về việc đọc dữ liệu từ nhiều sheet và gom lại để xử lý, không biết bạn có gặp khó khăn gì với phần này không? Chia sẻ thêm kinh nghiệm nhé!

3

Hay quá bạn ơi! Mình cũng đang tìm hiểu về Python để làm Excel đây.

Script của bạn có dùng thư viện nào khác ngoài pandas không? Mình đang thử dùng openpyxl để thao tác trực tiếp với file Excel và tạo biểu đồ, nhưng thấy hơi lằng nhằng. Nếu có cách nào hay ho hơn thì chia sẻ thêm nhé!

4

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

Đăng nhập Đăng ký