kiendaide1
Thành viên chính thức
- Tham gia
- 3/4/13
- Bài viết
- 93
- Được thích
- 4
1/ Bạn đăng lộn box. Cần phải đăng vào box Lập trình với Excel.Em có rất nhiều file giống nhau em muốn ghép vào 1 file excel nhưng em chỉ muốn lấy 1 ròng số thứ tự 13 mà không muốn lấy các ròng khác. xin các bác giúp đỡ lệnh VBA ạ. Em có file đính kèm
Bạn thử file này xem sao. Code của Anh NDU hay của 1 anh nào đó trên diên đàn mình có chế cháo lại đôi chút.Em có rất nhiều file giống nhau em muốn ghép vào 1 file excel nhưng em chỉ muốn lấy 1 ròng số thứ tự 13 mà không muốn lấy các ròng khác. xin các bác giúp đỡ lệnh VBA ạ. Em có file đính kèm
Hay quá em cảm ơn bác ạ. vidu em muốn tổng hợp danh sách dài (độ dài các danh sách không bằng nhau) em muốn tổng hợp thành 1 file thì xóa RangeSheet = B13:L13 đi phải không ạMình dùng code Getdata của anh Ndu bao lâu nay gộp file trong cùng thư mục thấy rất ổn (Máy mình xài office 2016 32bit)
Sub main() mình đã đặt các tham số cho phù hợp với yêu cầu của bạn:
- SheetName = "Mẫu số 04" (các file khác phải cùng tên sheet này mới tổng hợp được)
- RangeSheet = B13:L13 (chỉ lấy hàng 13)
p/s: bài bạn nhầm box nhưng nhìn file của bạn mình thấy là biểu mẫu trợ cấp cho người lao động do ảnh hưởng dịch Covid nên hy vọng bạn sẽ tổng hợp nhanh chóng.
Em cảm ơn bác ạ. bác có thể cho em xin file gốc được ko ạ. vì rất nhiều dư liệu em muốn gọp nó thành 1 file ạBạn thử file này xem sao. Code của Anh NDU hay của 1 anh nào đó trên diên đàn mình có chế cháo lại đôi chút.
Khi nhấn nút TỔNG HỢP sẽ hiện lên một bảng cho bạn chọn các file cần tổng hợp (bằng cách bôi đen và nhấn OK) và chờ xem kết quả. Kết quả trả về đang để bắt đầu từ ô A13đến ô L .... Ô L13:L... là tên của file và sheet đã được lấy dữ liệu. bạn có thể thay đổi hoặc xóa nếu thấy cần thiết.
Lưu ý Trong các File có nhiều sheet thì cũng lấy hết và chỉ lấy dòng 13 (Row=13). nếu Trong mỗi Worbook chỉ lấy 1 hoặc 2, 3 Sh gì đó, hoặc lấy nhiều dòng theo điều kiện nào đó thì phải sửa lại code
bạn chạy code tôi gủi cho thấy thế nào?Em cảm ơn bác ạ. bác có thể cho em xin file gốc được ko ạ. vì rất nhiều dư liệu em muốn gọp nó thành 1 file ạ
da rất ổn ạ. em muốn xin code lấy toàn bộ dư liệu và tên sheet cho thông dung không phải đổi tên sheet ạ. em cảm ơn anhbạn chạy code tôi gủi cho thấy thế nào?
dữ liệu nhiều , lấy theo điều kiện nào? lấy toàn bộ hay chỉ lấy một số dòng và một số cột thỏa mãn điều kiện nào đó cũng được mà, bởi vì là code sẽ chạy theo quy trình
là duyệt từng file trong khối file đã chọ code sẽ duyệt tiếp từng workbook, sau dó duyệt tiếp tùng sheet trong workbook đó, nếu tên sheet thỏa thì gán vùng dũ liệu thành một mảng, duyệt trong mảng ấy lấy dữ liệu cần thiết đưa vào một mảng khác( mảng KQ),sau khi duyệt hết các các wb, các sh, thì đóng wb lại duyệt sang file khác,cứ tuần tự như vậy cho đến hết.kết thúc là gán xuống sh (sh TONGHOP).và end sub.
code của anh NDU hay đề tài này có rất nhiều trên diễn đàn này bạn chụi khó tìm và nghiên cứu thêm nhé.
thì đó. như mình đã nói code sẽ duyệt từng ws có trong wb và lấy dữ liệu.da rất ổn ạ. em muốn xin code lấy toàn bộ dư liệu và tên sheet cho thông dung không phải đổi tên sheet ạ. em cảm ơn anh
Bạn vẫn phải đặt RangeSheet xác định vị trị cột bắt đầu đến cột kết thúc và hàng bắt đầu đến hàng kết thúc (vd: lấy dữ liệu 60.000 dòng thì đặt RangeSheet = B13:L60000 là lấy dữ liệu từ cột B13 đến cột L60000)Hay quá em cảm ơn bác ạ. vidu em muốn tổng hợp danh sách dài (độ dài các danh sách không bằng nhau) em muốn tổng hợp thành 1 file thì xóa RangeSheet = B13:L13 đi phải không ạ