Giúp đỡ cách tách dữ liệu

  • Thread starter Thread starter pt_hcl
  • Ngày gửi Ngày gửi
Liên hệ QC

pt_hcl

Thành viên hoạt động
Tham gia
15/2/11
Bài viết
138
Được thích
2
-Nhờ Các bạn giúp đỡ mình cách tách dữ liệu từ cột B (cột Nhập dữ liệu) chép sang cột D (cột Kết quả Tách, nhập thêm dữ liệu 0-nếu thiếu),cách thực hiện như sau:
+ Tách dữ liệu ở cột B riêng ra thành từng chữ số rồi kết quả nhập từ trên xuống dưới lần lượt vào cột D
+ Từ (B2;B11): dữ liệu mỗi hàng đầy đủ là có chữ 5 số. Trong trường hợp dữ liệu ở hàng nào đó thiếu chữ số thì ngầm hiểu là có chữ số 0 đứng trước nó. Ví dụ: tại B4 là 8257 thì ngầm hiểu là 08257 khi tách ra kết quả phải có đầy đủ là 0,8,2,5,7; tại B7 là 0 thì ngầm hiểu là 00000 khi tách ra thì kết quả đầy đủ là 0,0,0,0,0;.v.v.v
+ Từ (B12;B21): dữ liệu mỗi hàng đầy đủ là có 4 chữ số. Trong trường hợp dữ liệu ở hàng nào đó thiếu chữ số thì Cách tách và làm giống như trên. Ví dụ: tại B15 là 969 thì ngầm hiểu là 0969 khi tách ra thì kết quả đầy đủ là 0,9,6,9; v..v..
+ Từ (B22;B24): dữ liệu mỗi hàng đầy đủ là có 3 chữ số. Cách làm cũng giống như trên
+ Từ (B25;B28): dữ liệu mỗi hàng đầy đủ là có 2 chữ số. Cách làm cũng giống như trên.
-Kết quả cuối cùng ở cột D là có tổng 107 chữ số từ D2 cho đến D108.
-Các bạn giúp đỡ, xin cảm ơn rất nhiều!
 

File đính kèm

-Nhờ Các bạn giúp đỡ mình cách tách dữ liệu từ cột B (cột Nhập dữ liệu) chép sang cột D (cột Kết quả Tách, nhập thêm dữ liệu 0-nếu thiếu),cách thực hiện như sau:
+ Tách dữ liệu ở cột B riêng ra thành từng chữ số rồi kết quả nhập từ trên xuống dưới lần lượt vào cột D
+ Từ (B2;B11): dữ liệu mỗi hàng đầy đủ là có chữ 5 số. Trong trường hợp dữ liệu ở hàng nào đó thiếu chữ số thì ngầm hiểu là có chữ số 0 đứng trước nó. Ví dụ: tại B4 là 8257 thì ngầm hiểu là 08257 khi tách ra kết quả phải có đầy đủ là 0,8,2,5,7; tại B7 là 0 thì ngầm hiểu là 00000 khi tách ra thì kết quả đầy đủ là 0,0,0,0,0;.v.v.v
+ Từ (B12;B21): dữ liệu mỗi hàng đầy đủ là có 4 chữ số. Trong trường hợp dữ liệu ở hàng nào đó thiếu chữ số thì Cách tách và làm giống như trên. Ví dụ: tại B15 là 969 thì ngầm hiểu là 0969 khi tách ra thì kết quả đầy đủ là 0,9,6,9; v..v..
+ Từ (B22;B24): dữ liệu mỗi hàng đầy đủ là có 3 chữ số. Cách làm cũng giống như trên
+ Từ (B25;B28): dữ liệu mỗi hàng đầy đủ là có 2 chữ số. Cách làm cũng giống như trên.
-Kết quả cuối cùng ở cột D là có tổng 107 chữ số từ D2 cho đến D108.
-Các bạn giúp đỡ, xin cảm ơn rất nhiều!
Đây là công thức tách số có 5 chữ số. Bạn tự làm cho các trường hợp khác nhé:
Mã:
=MID(TEXT(INDEX($B$2:$B$28,ROUNDUP(ROW(1:1)/5,0)),"00000"),MOD(ROW(1:1)-1,5)+1,1)
=MID(TEXT(INDEX($B$2:$B$28,ROUNDUP(ROW(1:1)/5,0)),"00000"),MOD(ROW(1:1)-1,5)+1,1)
 
Đây là công thức tách số có 5 chữ số. Bạn tự làm cho các trường hợp khác nhé:
Mã:
=MID(TEXT(INDEX($B$2:$B$28,ROUNDUP(ROW(1:1)/5,0)),"00000"),MOD(ROW(1:1)-1,5)+1,1)
=MID(TEXT(INDEX($B$2:$B$28,ROUNDUP(ROW(1:1)/5,0)),"00000"),MOD(ROW(1:1)-1,5)+1,1)

Vâng, cảm ơn bạn! Đoạn code trên mình sửa một chút như sau: =MID(TEXT(INDEX($B$2:$B$11,ROUNDUP(ROW(1:1)/5,0)),"00000"),MOD(ROW(1:1)-1,5)+1,1), đặt tại D2 rồi kéo xuống thì sẽ tách được phần số có 5 chữ số từ (B2;B11);
-Nhưng từ (B12;B21) tách số có 4 chữ số thì mình sửa code như sao hả bạn? và Mình đặt công thức tại D52 đúng không ạ? (Mong bạn giúp cho chót ạ!) Thân!
- p/s: nếu có thể bạn có thể viết đoạn code chạy trong macro được không ạ!
 
Lần chỉnh sửa cuối:
Vâng, cảm ơn bạn! Đoạn code trên mình sửa một chút như sau: =MID(TEXT(INDEX($B$2:$B$11,ROUNDUP(ROW(1:1)/5,0)),"00000"),MOD(ROW(1:1)-1,5)+1,1), đặt tại D2 rồi kéo xuống thì sẽ tách được phần số có 5 chữ số từ (B2;B11);
-Nhưng từ (B12;B21) tách số có 4 chữ số thì mình sửa code như sao hả bạn? và Mình đặt công thức tại D52 đúng không ạ? (Mong bạn giúp cho chót ạ!) Thân!
- p/s: nếu có thể bạn có thể viết đoạn code chạy trong macro được không ạ!
Sau khi hết số 5 thì copy công thức của tôi ở bài #2 dán vào ô tiếp theo. Sửa hai chỗ số 5 thành 4. Chuỗi 5 số 0 thì bỏ bớt 1 số còn lại 4. Sửa lại vùng dữ liệu theo vùng dữ liệu 4 số của bạn (B12:B21).
Cụ thể công thức tại ô D52:
Mã:
=MID(TEXT(INDEX($B$12:$B$21,ROUNDUP(ROW(1:1)/4,0)),"0000"),MOD(ROW(1:1)-1,4)+1,1)
Những cái khác sửa tương tự.

Nếu viết code thì phải có dấu hiệu nhận biết vùng nào là vùng dữ liệu 5 chữ số, vùng nào là 4 chữ số...
 
Web KT

Bài viết mới nhất

Back
Top Bottom