Menu

Chia sẻ cách tự động trích xuất dữ liệu từ nhiều file Excel bằng Python

Vạn Viết Lành 04/04/2026 08:50 325 lượt xem 0 trả lời

Chào các bạn trong nhóm,

Dạo gần đây mình có làm một dự án cần trích xuất dữ liệu từ rất nhiều file Excel cùng một cấu trúc. Ban đầu mình định dùng các hàm Excel như Power Query nhưng số lượng file quá lớn và cấu trúc đôi khi có chút khác biệt nhỏ khiến việc này trở nên phức tạp. Sau đó, mình đã tìm hiểu và sử dụng Python để giải quyết vấn đề này và thấy khá hiệu quả.

Mình muốn chia sẻ lại cách làm cơ bản để mọi người tham khảo, đặc biệt là những ai đang làm việc với nhiều file Excel và muốn tự động hóa:

  • Đầu tiên, bạn cần cài đặt thư viện pandas: pip install pandas openpyxl
  • Tiếp theo, viết một đoạn script Python để duyệt qua tất cả các file Excel trong một thư mục, đọc dữ liệu từ mỗi file và ghép chúng lại thành một DataFrame duy nhất.
import pandas as pd
import os

folder_path = 'duong_dan_den_thu_muc_chua_file_excel'
all_data = pd.DataFrame()

for filename in os.listdir(folder_path):
    if filename.endswith('.xlsx'):
        file_path = os.path.join(folder_path, filename)
        df = pd.read_excel(file_path)
        # Có thể thêm xử lý nếu cấu trúc file có khác biệt
        all_data = pd.concat([all_data, df], ignore_index=True)

print(all_data.head())
# Xuất ra file Excel mới nếu cần
# all_data.to_excel('ket_qua_tong_hop.xlsx', index=False)

Với đoạn code trên, bạn chỉ cần thay duong_dan_den_thu_muc_chua_file_excel bằng đường dẫn thực tế đến thư mục chứa file Excel của bạn. Script sẽ đọc tất cả file .xlsx, gom dữ liệu và in ra 5 dòng đầu tiên. Nếu muốn, bạn có thể bỏ comment ở dòng cuối để xuất kết quả ra một file Excel mới.

Cách này giúp mình tiết kiệm rất nhiều thời gian so với làm thủ công. Có ai đã từng áp dụng Python vào việc xử lý file Excel tương tự chưa? Chia sẻ thêm kinh nghiệm nhé!

1

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

Đăng nhập Đăng ký