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 trích xuất dữ liệu từ nhiều file Excel có cấu trúc khác nhau bằng Python

Đặng Hán Duy 09/04/2026 15:08 138 lượt xem 1 trả lời

Chào các anh chị em trong diễn đàn,

Dạo gần đây mình có mày mò tìm hiểu về Python để hỗ trợ công việc với Excel và thấy nó thực sự mạnh mẽ, đặc biệt là trong việc tự động hóa các tác vụ lặp đi lặp lại. Hôm nay mình muốn chia sẻ một chút về kinh nghiệm của mình trong việc tự động hóa trích xuất dữ liệu từ nhiều file Excel có cấu trúc khác nhau.

Cụ thể, công ty mình có nhiều file báo cáo từ các phòng ban khác nhau, mỗi file lại có cấu trúc hơi khác một chút (cột A, B, C ở file này thì có thể là A, C, B ở file kia, hoặc có thêm/bớt cột không cần thiết). Việc tổng hợp dữ liệu thủ công tốn rất nhiều thời gian và dễ sai sót.

Sau khi tìm hiểu, mình đã sử dụng thư viện pandas của Python để giải quyết vấn đề này. Với pandas, mình có thể:

  • Đọc dữ liệu từ nhiều file Excel (.xlsx, .xls) một cách dễ dàng.
  • Xử lý các trường hợp cấu trúc cột khác nhau bằng cách chọn lọc và sắp xếp lại các cột theo ý muốn.
  • Lọc bỏ các dòng, cột không cần thiết.
  • Gom tất cả dữ liệu vào một DataFrame duy nhất.
  • Xuất kết quả ra một file Excel mới hoặc một định dạng khác.

Ví dụ đơn giản về cách đọc và gom dữ liệu:

import pandas as pd
import glob

# Lấy danh sách tất cả các file excel trong một thư mục
all_files = glob.glob("path/to/your/excel/files/*.xlsx")

df_list = []

for filename in all_files:
    df = pd.read_excel(filename)
    # Ở đây có thể thêm các bước xử lý cấu trúc cột nếu cần
    # Ví dụ: df = df[['Tên Cột 1', 'Tên Cột 3', 'Tên Cột 2']]
    df_list.append(df)

# Gom tất cả các DataFrame lại
final_df = pd.concat(df_list, ignore_index=True)

# Xuất ra file excel mới
final_df.to_excel("final_report.xlsx", index=False)

Cách này thực sự đã giúp mình tiết kiệm được rất nhiều công sức. Nếu anh chị em nào đang gặp vấn đề tương tự hoặc muốn tìm hiểu sâu hơn về pandas cho Excel, có thể tham khảo thêm các bài viết về thư viện này hoặc đặt câu hỏi nhé!

2

Hay quá bạn ơi! Mình cũng đang vật lộn với việc gom dữ liệu từ mấy file báo cáo lộn xộn của mấy bộ phận khác nhau. Bạn có thể chia sẻ thêm về cách bạn xử lý trường hợp cấu trúc file khác nhau không? Ví dụ như tên cột khác nhau hoàn toàn hay chỉ là thứ tự cột thôi chẳng hạn? Mình đang dùng thư viện pandas, không biết bạn có dùng cái này không?

1

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

Đăng nhập Đăng ký