Chào các bác, em đang gặp một vấn đề hơi đau đầu một chút. Công ty em có nhiều chi nhánh và mỗi chi nhánh sẽ xuất một file Excel báo cáo hàng tuần. Giờ sếp yêu cầu em tổng hợp tất cả các file báo cáo này lại thành một file duy nhất để làm báo cáo tổng. Số lượng file báo cáo có thể lên đến vài chục file, mỗi file lại có cấu trúc sheet và cột hơi khác nhau một chút. Làm thủ công thì tốn rất nhiều thời gian và dễ sai sót.
Em có tìm hiểu qua thì thấy VBA có thể giải quyết được vấn đề này. Tuy nhiên, em mới chỉ làm quen với VBA ở mức cơ bản, chủ yếu là tự động hóa các tác vụ đơn giản trên một file. Em chưa có kinh nghiệm xử lý việc đọc dữ liệu từ nhiều file cùng lúc, đặc biệt là khi cấu trúc file nguồn có thể không hoàn toàn giống nhau.
Em muốn hỏi các cao thủ trong diễn đàn mình:
- Có cách nào để viết một đoạn code VBA có thể tự động mở tất cả các file báo cáo trong một thư mục chỉ định không?
- Làm sao để trích xuất và gom dữ liệu từ các cột tương ứng trong từng file vào một sheet tổng hợp, ngay cả khi tên cột có thể hơi khác nhau (ví dụ: 'Doanh thu' ở file này, 'Sales' ở file khác)?
- Có những hàm hay phương thức VBA nào thường được sử dụng cho loại tác vụ này mà em nên tìm hiểu kỹ hơn?
Em rất mong nhận được sự chỉ dẫn và chia sẻ kinh nghiệm từ các anh chị đi trước. Nếu có thể, xin chia sẻ một vài đoạn code mẫu hoặc gợi ý hướng đi thì em xin cảm ơn rất nhiều ạ!
Em xin cảm ơn!