Tách dữ liệu cột A (A2:A200) thành nhiều cột chẵn lẻ như bên cạnh xin cần được trợ giúp .

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

phamhongkhuong

Thành viên mới
Tham gia
16/11/10
Bài viết
15
Được thích
7
Giới tính
Nam
Tôi có dữ liệu ở cột A ( A1:A200) tôi muốn tách sang cột (B:Zz) thành các cột chẵn lẻ như trên
Tại cột A, tính từ trên xuống dưới:
- Số đầu tiên (giả sử là số lẻ) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số chẵn thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
- Số đầu tiên (giả sử là số chẵn) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số lẻ thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
Screenshot 2024-06-13 232137.png
 

File đính kèm

  • 1000017758.png
    1000017758.png
    85.1 KB · Đọc: 100
Lần chỉnh sửa cuối:
quy luật để tách cột là gì
 
quy luật để tách cột là gì
Đoán mò.
Tại cột A, tính từ trên xuống dưới:
- Số đầu tiên (giả sử là số lẻ) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số chẵn thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
- Số đầu tiên (giả sử là số chẵn) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số lẻ thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
Định làm hộ rồi nhưng thấy tiêu đề viết toàn chữ to nên lại sợ.
 
Lần chỉnh sửa cuối:
Đoán mò.
Tại cột A, tính từ trên xuống dưới:
- Số đầu tiên (giả sử là số lẻ) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số chẵn thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
- Số đầu tiên (giả sử là số chẵn) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số lẻ thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
Định làm hộ rồi nhưng thấy tiêu đề viết toàn chữ to nên lại sợ.
Dạ đúng như vậy nhưng không biết viết hàm ra sao xin cần trợ giúp
Bài đã được tự động gộp:

Đoán mò.
Tại cột A, tính từ trên xuống dưới:
- Số đầu tiên (giả sử là số lẻ) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số chẵn thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
- Số đầu tiên (giả sử là số chẵn) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số lẻ thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
Định làm hộ rồi nhưng thấy tiêu đề viết toàn chữ to nên lại sợ.
Bạn làm giúp mình nhé thanks bạn
 
Lần chỉnh sửa cuối:
Tôi có dữ liệu ở cột A ( A1:A200) tôi muốn tách sang cột (B:Zz) thành các cột chẵn lẻ như trên
Tại cột A, tính từ trên xuống dưới:
- Số đầu tiên (giả sử là số lẻ) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số chẵn thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
- Số đầu tiên (giả sử là số chẵn) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số lẻ thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
View attachment 301654
Cho: A2: A201 là dãy số như bạn yêu cầu.
Công thức tại B2:
Mã:
=IFERROR(INDEX($A$2:$A$201,AGGREGATE(15,6,ROW($1:$200)/(MMULT(--(ROW($1:$200)>=TRANSPOSE(ROW($1:$200))),--(ISODD(N(+$A$1:$A$200))<>ISODD(N(+$A$2:$A$201))))=COLUMNS($A:A))/($A$2:$A$201<>""),ROWS($1:1))),"")
Fill xuống, và qua ngang.

Do công thức dùng mảng, nên dữ liệu càng nhiều sẽ gây trì trệ khi chạy.

Thân
 

File đính kèm

Cho: A2: A201 là dãy số như bạn yêu cầu.
Công thức tại B2:
Mã:
=IFERROR(INDEX($A$2:$A$201,AGGREGATE(15,6,ROW($1:$200)/(MMULT(--(ROW($1:$200)>=TRANSPOSE(ROW($1:$200))),--(ISODD(N(+$A$1:$A$200))<>ISODD(N(+$A$2:$A$201))))=COLUMNS($A:A))/($A$2:$A$201<>""),ROWS($1:1))),"")
Fill xuống, và qua ngang.

Do công thức dùng mảng, nên dữ liệu càng nhiều sẽ gây trì trệ khi chạy.

Thân
Cảm ơn bạn mình sẽ chạy thử hàm bạn viết thanks
Bài đã được tự động gộp:

Cảm ơn bạn mình sẽ chạy thử hàm bạn viết thanks
Screenshot 2024-06-13 143156.png
Thanks bạn rất nhiều bạn làm rất đúng!
 
Lần chỉnh sửa cuối:
Tôi có dữ liệu ở cột A ( A1:A200) tôi muốn tách sang cột (B:Zz) thành các cột chẵn lẻ như trên
Tại cột A, tính từ trên xuống dưới:
- Số đầu tiên (giả sử là số lẻ) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số chẵn thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
- Số đầu tiên (giả sử là số chẵn) sẽ gán cho cột đầu tiên bên phải cho đến khi gặp số lẻ thì chuyển sang cột tiếp theo, tương tự cho các số còn lại.
View attachment 301654
Nếu bạn dùng excel 365 thì có thể thử:
Mã:
=TRANSPOSE(TEXTSPLIT(TEXTJOIN(,,MAP(C2:C100,LAMBDA(x,x&IF(MOD(x-OFFSET(x,1,0),2),";",",")))),",",";",1,,""))
 
Đọc từ đầu đến giờ nhưng vẫn chưa hiểu luôn :D
 
Nếu bạn dùng excel 365 thì có thể thử:
Cho: A2: A201 là dãy số như bạn yêu cầu.
Công thức tại B2:
Mã:
=IFERROR(INDEX($A$2:$A$201,AGGREGATE(15,6,ROW($1:$200)/(MMULT(--(ROW($1:$200)>=TRANSPOSE(ROW($1:$200))),--(ISODD(N(+$A$1:$A$200))<>ISODD(N(+$A$2:$A$201))))=COLUMNS($A:A))/($A$2:$A$201<>""),ROWS($1:1))),"")
Fill xuống, và qua ngang.

Do công thức dùng mảng, nên dữ liệu càng nhiều sẽ gây trì trệ khi chạy.

Thân
Mình đã thử công thức của bạn nó chạy rất oke nhưng các số đầu tiên là số chẵn thì nó sẽ ko xuất hiện trong cột bên cạnh ạ
Mình vẫn chưa chạy được hàm này vẫn đang dùng 365 bạn ơi
Bài đã được tự động gộp:

Cho: A2: A201 là dãy số như bạn yêu cầu.
Công thức tại B2:
Mã:
=IFERROR(INDEX($A$2:$A$201,AGGREGATE(15,6,ROW($1:$200)/(MMULT(--(ROW($1:$200)>=TRANSPOSE(ROW($1:$200))),--(ISODD(N(+$A$1:$A$200))<>ISODD(N(+$A$2:$A$201))))=COLUMNS($A:A))/($A$2:$A$201<>""),ROWS($1:1))),"")
Fill xuống, và qua ngang.

Do công thức dùng mảng, nên dữ liệu càng nhiều sẽ gây trì trệ khi chạy.

Thân
Công thức của bạn chạy rất tốt nhưng các số đầu tiên giả sử là số chẵn thì nó không xuất hiện trong cột tách bạn hướng dẫn để hoàn thiện công thức cho đúng hơn cảm ơn bạn
 

File đính kèm

Lần chỉnh sửa cuối:
Mình vẫn chưa chạy được hàm này vẫn đang dùng 365 bạn ơi
Bài đã được tự động gộp:


Công thức của bạn chạy rất tốt nhưng các số đầu tiên giả sử là số chẵn thì nó không xuất hiện trong cột tách bạn hướng dẫn để hoàn thiện công thức cho đúng hơn cảm ơn bạn
Bạn chụp màn hình thử coi lỗi gì nhé
 
Dạo này quen với thanh thiếc rồi nhỉ?
Dạ, em mới dậy, đầu óc còn mụ mẫm chưa tỏ ý anh!

/-*+//-*+//-*+/
-------------
Sau khi bớt "say ke", đọc lại bài của thớt mới thấy. Tội em chỉ chăm chăm lo dòm bài #1. :)

_______________________________________
Công thức của bạn chạy rất tốt nhưng các số đầu tiên giả sử là số chẵn thì nó không xuất hiện trong cột tách bạn hướng dẫn để hoàn thiện công thức cho đúng hơn cảm ơn bạn
À! Tôi quên để ý đến cái vụ đó rồi.
Vậy, thì thêm điều kiện vào công thức:
Mã:
=IFERROR(INDEX($A$2:$A$201,AGGREGATE(15,6,ROW($1:$200)/(MMULT(--(ROW($1:$200)>=TRANSPOSE(ROW($1:$200))),--IF(ISODD($A$2),ISODD(N(+$A$1:$A$200))<>ISODD(N(+$A$2:$A$201)),(ISEVEN(N(+$A$1:$A$200))<>ISEVEN(N(+$A$2:$A$201)))+1-SIGN(ROW($1:$200)-1)))=COLUMNS($A:A))/($A$2:$A$201<>""),ROWS($1:1))),"")

Thân
 

File đính kèm

Lần chỉnh sửa cuối:
Dạ, em mới dậy, đầu óc còn mụ mẫm chưa tỏ ý anh!

/-*+//-*+//-*+/
-------------
Sau khi bớt "say ke", đọc lại bài của thớt mới thấy. Tội em chỉ chăm chăm lo dòm bài #1. :)


_______________________________________

À! Tôi quên để ý đến cái vụ đó rồi.
Vậy, thì thêm điều kiện vào công thức:
Mã:
=IFERROR(INDEX($A$2:$A$201,AGGREGATE(15,6,ROW($1:$200)/(MMULT(--(ROW($1:$200)>=TRANSPOSE(ROW($1:$200))),--IF(ISODD($A$2),ISODD(N(+$A$1:$A$200))<>ISODD(N(+$A$2:$A$201)),(ISEVEN(N(+$A$1:$A$200))<>ISEVEN(N(+$A$2:$A$201)))+1-SIGN(ROW($1:$200)-1)))=COLUMNS($A:A))/($A$2:$A$201<>""),ROWS($1:1))),"")

Thân
Công thức của bạn đã hoàn chỉnh cảm ơn bạn nhiều!
Bài đã được tự động gộp:

Nếu bạn dùng excel 365 thì có thể thử:
Mã:
=TRANSPOSE(TEXTSPLIT(TEXTJOIN(,,MAP(C2:C100,LAMBDA(x,x&IF(MOD(x-OFFSET(x,1,0),2),";",",")))),",",";",1,,""))
Nó hiện lỗi bạn ơi
 

File đính kèm

  • Screenshot 2024-06-13 232137.png
    Screenshot 2024-06-13 232137.png
    145.6 KB · Đọc: 16
  • Screenshot 2024-06-13 232619.png
    Screenshot 2024-06-13 232619.png
    237.9 KB · Đọc: 15
Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom