Nhờ định hướng xử lý dữ liệu

Liên hệ QC

huhumalu

Thành viên tiêu biểu
Tham gia
20/10/09
Bài viết
624
Được thích
519
Hiện thì em đang cần lấy dữ liệu từ các bảng nằm ở các trang dữ liệu theo kiểu.
- Dữ liệu có số lượng cột thì giống nhau.
- Dữ liệu nằm trên khoảng 5 trang, tuy nhiên kg biết trước được số lượng dòng trong từng trang. Có thể xem là từng sheet cho dễ hiểu.
Hiện em đang dùng for để quét qua 5 trang, tìm dòng cuối của từng trang, rồi lấy dữ liệu, dữ liệu kiểu nối đuôi (vì số cột là giống nhau) nên lấy hết dòng trang 1 thì sang trang 2, tuần tự đến hết ?
Tuy nhiên có rắc rối nãy sinh là :
1. Không lẽ mình đoán số lượng dòng, để khai báo mảng ban đầu cho phù hợp ? --> chọn dư ra một xíu, rồi paste xuống sheet thì cũng kg sao.
2. Nếu dùng Redim presever thì cũng chỉ mở rộng sang cột, nếu muốn dùng thì phải "Transpose" trước và sau.
3. Em đang thấy thì hình như Dic thì kg cần khai báo trước, chỉ cần Add.item (nếu dạng này thì anh chị có thể cho em vài ví dụ cụ thể về nạp mảng và xuất ra sheet với).
Nhờ anh chị định xem giúp hướng nào hiệu quả và phù hợp cho trường hợp này.
Cảm ơn anh chị !
 
Không lẽ mình đoán số lượng dòng,


1.Có thể khai báo mảng dư ra hoặc trước khi chạy bạn tìm dòng cuối của tất cả các sheets cần.dùng for each duyệt qua các sheets hay khai báo bằng tay là tùy.rồi cộng lại với nhau để khai báo kích thước mảng.

Nếu dùng redim thì bạn cũng cần biết kích thước mảng như thế nào để khai báo mà?cũng mất thêm 1 bước

3.Dictionary thì dữ liệu phải có mã Key là duy nhất. Add Item theo key. còn ví dụ thì mình thấy trên diễn đàn có rồi bạn chịu khó tìm
 
Số lượng cột như nhau đã là điều tốt; Còn việc số dòng dữ liệu không như nhau cũng không sao; Chỉ mong là các dòng tiêu đề (cột/trường) ở các trang là như nhau.
 
Hiện thì em đang cần lấy dữ liệu từ các bảng nằm ở các trang dữ liệu theo kiểu.
- Dữ liệu có số lượng cột thì giống nhau.
- Dữ liệu nằm trên khoảng 5 trang, tuy nhiên kg biết trước được số lượng dòng trong từng trang. Có thể xem là từng sheet cho dễ hiểu.
Hiện em đang dùng for để quét qua 5 trang, tìm dòng cuối của từng trang, rồi lấy dữ liệu, dữ liệu kiểu nối đuôi (vì số cột là giống nhau) nên lấy hết dòng trang 1 thì sang trang 2, tuần tự đến hết ?
Tuy nhiên có rắc rối nãy sinh là :
1. Không lẽ mình đoán số lượng dòng, để khai báo mảng ban đầu cho phù hợp ? --> chọn dư ra một xíu, rồi paste xuống sheet thì cũng kg sao.
2. Nếu dùng Redim presever thì cũng chỉ mở rộng sang cột, nếu muốn dùng thì phải "Transpose" trước và sau.
3. Em đang thấy thì hình như Dic thì kg cần khai báo trước, chỉ cần Add.item (nếu dạng này thì anh chị có thể cho em vài ví dụ cụ thể về nạp mảng và xuất ra sheet với).
Nhờ anh chị định xem giúp hướng nào hiệu quả và phù hợp cho trường hợp này.
Cảm ơn anh chị !
Góp ý cho bạn:
1/ Tiêu đề bài viết không nên ghi chung chung mà nên ghi rõ nghĩa, ví dụ "Copy dữ liệu từng sheet và Paste nối xuống vào 1 sheet" và phải phù hợp với nội dung (bạn nên đọc lại nội quy để hiểu).
2/ Nội dung diễn giải nhiều nhưng không đính kèm File để mọi người xem cho dễ hiểu.
 
Hiện thì em đang cần lấy dữ liệu từ các bảng nằm ở các trang dữ liệu theo kiểu.
- Dữ liệu có số lượng cột thì giống nhau.
- Dữ liệu nằm trên khoảng 5 trang, tuy nhiên kg biết trước được số lượng dòng trong từng trang. Có thể xem là từng sheet cho dễ hiểu.
Hiện em đang dùng for để quét qua 5 trang, tìm dòng cuối của từng trang, rồi lấy dữ liệu, dữ liệu kiểu nối đuôi (vì số cột là giống nhau) nên lấy hết dòng trang 1 thì sang trang 2, tuần tự đến hết ?
Tuy nhiên có rắc rối nãy sinh là :
1. Không lẽ mình đoán số lượng dòng, để khai báo mảng ban đầu cho phù hợp ? --> chọn dư ra một xíu, rồi paste xuống sheet thì cũng kg sao.
2. Nếu dùng Redim presever thì cũng chỉ mở rộng sang cột, nếu muốn dùng thì phải "Transpose" trước và sau.
3. Em đang thấy thì hình như Dic thì kg cần khai báo trước, chỉ cần Add.item (nếu dạng này thì anh chị có thể cho em vài ví dụ cụ thể về nạp mảng và xuất ra sheet với).
Nhờ anh chị định xem giúp hướng nào hiệu quả và phù hợp cho trường hợp này.
Cảm ơn anh chị !
1. đoán số lượng dòng, để khai báo mảng ban đầu cho phù hợp --> chọn dư ra
2. Thêm bước quét tất cả các sheet tính tống số dòng kết quả
3. Xử lý từng trang: Gán kết quả trang 1 ,gán kết quả trang 2 ...
 
1.Có thể khai báo mảng dư ra hoặc trước khi chạy bạn tìm dòng cuối của tất cả các sheets cần.dùng for each duyệt qua các sheets hay khai báo bằng tay là tùy.rồi cộng lại với nhau để khai báo kích thước mảng.


Nếu dùng redim thì bạn cũng cần biết kích thước mảng như thế nào để khai báo mà?cũng mất thêm 1 bước


3.Dictionary thì dữ liệu phải có mã Key là duy nhất. Add Item theo key. còn ví dụ thì mình thấy trên diễn đàn có rồi bạn chịu khó tìm
Chắc có lẽ dùng 2 vòng lặp, 1 cái lấy kich thước, 1 cái nhập liệu vậy. Thanks bạn.
Bài đã được tự động gộp:

Số lượng cột như nhau đã là điều tốt; Còn việc số dòng dữ liệu không như nhau cũng không sao; Chỉ mong là các dòng tiêu đề (cột/trường) ở các trang là như nhau.
Dạ, cái này thì tiêu đề, cột trường là giống như nhau, bảng thống kê nó nằm từng page như web thôi anh.
Bài đã được tự động gộp:

Góp ý cho bạn:
1/ Tiêu đề bài viết không nên ghi chung chung mà nên ghi rõ nghĩa, ví dụ "Copy dữ liệu từng sheet và Paste nối xuống vào 1 sheet" và phải phù hợp với nội dung (bạn nên đọc lại nội quy để hiểu).
2/ Nội dung diễn giải nhiều nhưng không đính kèm File để mọi người xem cho dễ hiểu.
Vâng, cái này nội dung chính của bài là xin nhớ anh em định hướng để xử lý.
Còn cái coppy paste như anh nói là bước sau, em vẫn lưu ý và sửa lại theo yêu cầu.
Bài đã được tự động gộp:

1. đoán số lượng dòng, để khai báo mảng ban đầu cho phù hợp --> chọn dư ra
2. Thêm bước quét tất cả các sheet tính tống số dòng kết quả
3. Xử lý từng trang: Gán kết quả trang 1 ,gán kết quả trang 2 ...
Chắc là sẽ làm theo hướng 2 vòng lặp, 1 cái thì lấy kích thước, cái sau thì nhập dữ liệu vào mảng. Thanks.
 
Nhưng mà em cũng kg biết làm gì để sửa tiêu đề, nếu mod hay admin nào qua thì sửa giúp em nhé.
Tiêu đề hiện tại thành "Copy dữ liệu từng sheet và Paste nối xuống vào 1 sheet"
 
Nhưng mà em cũng kg biết làm gì để sửa tiêu đề, nếu mod hay admin nào qua thì sửa giúp em nhé.
Tiêu đề hiện tại thành "Copy dữ liệu từng sheet và Paste nối xuống vào 1 sheet"
Bạn đăng nhập xong, vào bài 1 click vào nút sửa (bên góc trái, dưới bài 1), rồi muốn sửa gì chả được.
 
Hình như là trong vòng 24h đó Bác.còn bài này từ thứ 7 rồi chắc không được quá
 
Như bài viết này viết hôm thứ 7 và tới hôm nay không thể sửa xóa được
1605508822250.png
 
Hiện thì em đang cần lấy dữ liệu từ các bảng nằm ở các trang dữ liệu theo kiểu.
- Dữ liệu có số lượng cột thì giống nhau.
- Dữ liệu nằm trên khoảng 5 trang, tuy nhiên kg biết trước được số lượng dòng trong từng trang. Có thể xem là từng sheet cho dễ hiểu.
Hiện em đang dùng for để quét qua 5 trang, tìm dòng cuối của từng trang, rồi lấy dữ liệu, dữ liệu kiểu nối đuôi (vì số cột là giống nhau) nên lấy hết dòng trang 1 thì sang trang 2, tuần tự đến hết ?
Tuy nhiên có rắc rối nãy sinh là :
1. Không lẽ mình đoán số lượng dòng, để khai báo mảng ban đầu cho phù hợp ? --> chọn dư ra một xíu, rồi paste xuống sheet thì cũng kg sao.
2. Nếu dùng Redim presever thì cũng chỉ mở rộng sang cột, nếu muốn dùng thì phải "Transpose" trước và sau.
3. Em đang thấy thì hình như Dic thì kg cần khai báo trước, chỉ cần Add.item (nếu dạng này thì anh chị có thể cho em vài ví dụ cụ thể về nạp mảng và xuất ra sheet với).
Nhờ anh chị định xem giúp hướng nào hiệu quả và phù hợp cho trường hợp này.
Cảm ơn anh chị !
Có phải ý bạn này là nạp 5 sheet vào chung một array không mọi người, chỉ mình không hiểu ý lắm hay sao nhỉ
 
Có phải ý bạn này là nạp 5 sheet vào chung một array không mọi người, chỉ mình không hiểu ý lắm hay sao nhỉ
Tôi còn chậm tiêu hơn bạn một bậc.
Bài này nếu theo tôi hiểu thì chỉ giản dị cóp-pi vùng từng sheet rồi pết vào sheet kết quả.
Chả biết a-rây a-rót hay đít sần làm gì ở đây.

Nếu muốn cốt phăng-ta-gi thì có thể dùng ADO. Đọc và ghi 5 lần cũng được mà đọc một lần cả 5 sheets ghi xuống cũng xong.
 
Web KT
Back
Top Bottom