Chào các anh chị em trong diễn đàn,
Hiện tại mình đang có một file Excel chứa dữ liệu bán hàng của cả năm, mỗi dòng là một giao dịch. Mình muốn tự động hóa việc tạo ra các báo cáo riêng cho từng tháng. Ví dụ, khi chọn tháng 1 thì nó sẽ lọc ra toàn bộ dữ liệu của tháng 1 và copy sang một sheet mới có tên là 'Thang 01'. Tương tự với các tháng còn lại.
Mình đã thử lọc thủ công nhưng với số lượng giao dịch lớn thì rất mất thời gian. Mình nghĩ VBA có thể làm được việc này. Có anh chị nào đã từng làm qua hoặc có đoạn code mẫu cho trường hợp này không ạ? Mình cần lấy dữ liệu từ sheet 'DuLieuGoc' và tạo các sheet mới theo tên tháng.
Cụ thể, mình muốn:
- Tạo một UserForm đơn giản với một ComboBox để chọn tháng (từ 1 đến 12).
- Khi chọn tháng và nhấn nút 'Tạo báo cáo', VBA sẽ tự động:
- Tạo một sheet mới nếu chưa có, với tên tương ứng với tháng đã chọn (ví dụ: 'Thang 01', 'Thang 02',...).
- Copy toàn bộ dữ liệu từ sheet 'DuLieuGoc' mà có ngày thuộc tháng đã chọn sang sheet mới này.
- Nếu sheet đã tồn tại, nó sẽ xóa dữ liệu cũ và cập nhật dữ liệu mới.
Mình mới tập tành VBA nên còn nhiều bỡ ngỡ. Rất mong nhận được sự giúp đỡ từ các cao thủ ạ. Xin cảm ơn!