Chào các bác, dạo này em làm báo cáo mà cứ phải copy paste thủ công từ mấy chục file Excel nhỏ lẻ sang file tổng hợp, mệt quá trời. Tìm hiểu trên mạng thì thấy có mấy cách làm hay hay, muốn chia sẻ lại cho anh em nào đang gặp tình cảnh tương tự.
Thông thường, khi cần tổng hợp dữ liệu từ nhiều file, mọi người hay nghĩ đến Power Query hoặc VBA. Cả hai đều mạnh mẽ nhưng đôi khi hơi phức tạp cho người mới.
Em thì mới tìm được một vài cách đơn giản hơn mà hiệu quả cũng khá cao:
- Sử dụng hàm INDIRECT kết hợp với tên file: Cách này phù hợp khi cấu trúc các file nguồn giống nhau và bạn biết rõ đường dẫn, tên file. Tuy nhiên, nó có nhược điểm là không tự động cập nhật khi file nguồn thay đổi, phải mở lại file tổng hợp.
- Dùng Power Query (Get & Transform Data): Cái này thì đúng là 'con cưng' của Excel hiện đại. Nó cho phép bạn kết nối, lọc, biến đổi dữ liệu từ nhiều nguồn (bao gồm cả nhiều file Excel) một cách tự động và có thể làm mới bất cứ lúc nào. Cực kỳ mạnh mẽ cho việc tổng hợp báo cáo định kỳ.
- Viết một đoạn VBA đơn giản: Nếu bạn quen thuộc với VBA, việc viết một macro nhỏ để lặp qua các file trong một thư mục và trích xuất dữ liệu cần thiết là hoàn toàn khả thi. Cách này cho phép tùy biến cao độ.
Em thấy Power Query là giải pháp tối ưu nhất cho đa số trường hợp cần tổng hợp dữ liệu từ nhiều file. Nó vừa tự động, vừa mạnh mẽ, lại dễ học hơn VBA một chút.
Anh em nào có kinh nghiệm hay cách nào khác hay hơn thì chia sẻ thêm cho em với nhé!