Chào mọi người,
Dạo này mình có làm việc với nhiều file Excel nguồn, mỗi file lại có cấu trúc hơi khác nhau một chút về tên cột hoặc thứ tự cột. Việc gom dữ liệu thủ công rất mất thời gian và dễ sai sót. Sau một hồi mày mò, mình đã tìm ra cách dùng Power Query để xử lý vấn đề này khá hiệu quả.
Cụ thể, mình muốn trích xuất một vài cột thông tin quan trọng từ các file Excel này và gom chúng lại thành một bảng duy nhất. Vấn đề là không phải lúc nào các file cũng có cùng tên cột hoặc cùng thứ tự cột.
Cách mình làm là:
- Đầu tiên, dùng chức năng Get Data > From File > From Folder để kết nối đến thư mục chứa các file Excel.
- Trong cửa sổ Power Query, mình sẽ xử lý file mẫu trước.
- Sau đó, ở bước xử lý các file còn lại, thay vì chọn trực tiếp các cột theo tên, mình sẽ dùng các hàm để xác định cột dựa trên vị trí hoặc một tiêu chí nào đó (ví dụ: cột chứa chữ 'Doanh thu').
- Một mẹo nhỏ là mình có thể dùng hàm
Table.ColumnNames(Source)để lấy danh sách tên cột, sau đó dùngList.PositionOfđể tìm vị trí của cột mình cần. - Cuối cùng, mình dùng hàm
Table.SelectColumnshoặcTable.RemoveColumnsđể giữ lại hoặc loại bỏ các cột không cần thiết, đảm bảo tất cả các bảng con sau khi xử lý đều có cấu trúc giống nhau trước khi Combine.
Cách này giúp mình tự động hóa việc gom dữ liệu ngay cả khi cấu trúc file nguồn có thay đổi nhẹ. Hy vọng chia sẻ này hữu ích cho các bạn nào đang gặp tình huống tương tự.
Có ai có cách nào hay hơn hoặc gặp khó khăn gì khi xử lý vấn đề này không, cùng thảo luận nhé!