Lọc dữ liệu theo điều kiện

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

danghieuphuong9

Thành viên mới
Tham gia
8/12/22
Bài viết
25
Được thích
3
Em chào anh/chị
Em có dữ liệu muốn lọc mã Code. Mong anh/chị giúp đỡ. Em cảm ơn ạ
 

File đính kèm

Quy luật ở đây là gì bạn?
Dạ em ví dụ code 15225V2212291-TKE-A-60662 =>V2212291-TKE-A : lấy bắt đầu có ký tự chữ cái đến kết thúc chữ cái cuối cùng. Riêng code 2255AAB2212279-220910753 =>AAB2212279 : vì không có chữ cái cuối cùng nào nên lấy kết thúc trước dấu "-".
 
Dạ em ví dụ code 15225V2212291-TKE-A-60662 =>V2212291-TKE-A : lấy bắt đầu có ký tự chữ cái đến kết thúc chữ cái cuối cùng. Riêng code 2255AAB2212279-220910753 =>AAB2212279 : vì không có chữ cái cuối cùng nào nên lấy kết thúc trước dấu "-".
Chữ cái cuối cùng là B đấy thôi.
Tạm gửi bạn công thức mấy trường hợp còn lại.
Mã:
=RIGHT(LEFT(B5,MAX(IF((CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))>=65)*(CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))<=90),ROW(INDIRECT("A1:A"&LEN(B5))),""))),MAX(IF((CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))>=65)*(CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))<=90),ROW(INDIRECT("A1:A"&LEN(B5))),""))+1-MIN(IF((CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))>=65)*(CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))<=90),ROW(INDIRECT("A1:A"&LEN(B5))),"")))
 
Dạ em ví dụ code 15225V2212291-TKE-A-60662 =>V2212291-TKE-A : lấy bắt đầu có ký tự chữ cái đến kết thúc chữ cái cuối cùng. Riêng code 2255AAB2212279-220910753 =>AAB2212279 : vì không có chữ cái cuối cùng nào nên lấy kết thúc trước dấu "-".

Thử:

Mã:
=REPLACE(LEFT(B5,LOOKUP(1000,(ROW(INDIRECT("A1:A"&LEN(B5)))-(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1)="-"))
/(ABS(CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))-52.5)>4.5)))
,1,MATCH(TRUE,ABS(CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))-77.5)<=12.5,0)-1,"")
Ctrl+ Shift+Enter

.
 
Em chào anh/chị
Em có dữ liệu muốn lọc mã Code. Mong anh/chị giúp đỡ. Em cảm ơn ạ
Mã:
=MID(MID(B5,1,LOOKUP(2,1/((CODE(MID($B5,ROW($2:$100),1))=45)+(CODE(MID($B5,ROW($1:$100),1))>60)),ROW($1:$100))),MATCH(TRUE,CODE(MID($B5,ROW($1:$100),1))>60,0),100)
Nhấn Ctrl + Shift + Enter
 
Mã:
=MID(MID(B5,1,LOOKUP(2,1/((CODE(MID($B5,ROW($2:$100),1))=45)+(CODE(MID($B5,ROW($1:$100),1))>60)),ROW($1:$100))),MATCH(TRUE,CODE(MID($B5,ROW($1:$100),1))>60,0),100)
Nhấn Ctrl + Shift + Enter
Tuyệt vời quá anh. Em cảm ơn nhiều ạ
Bài đã được tự động gộp:

Thử:

Mã:
=REPLACE(LEFT(B5,LOOKUP(1000,(ROW(INDIRECT("A1:A"&LEN(B5)))-(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1)="-"))
/(ABS(CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))-52.5)>4.5)))
,1,MATCH(TRUE,ABS(CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))-77.5)<=12.5,0)-1,"")
Ctrl+ Shift+Enter

.
Em cảm ơn anh nhiều nhá
Bài đã được tự động gộp:

Chữ cái cuối cùng là B đấy thôi.
Tạm gửi bạn công thức mấy trường hợp còn lại.
Mã:
=RIGHT(LEFT(B5,MAX(IF((CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))>=65)*(CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))<=90),ROW(INDIRECT("A1:A"&LEN(B5))),""))),MAX(IF((CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))>=65)*(CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))<=90),ROW(INDIRECT("A1:A"&LEN(B5))),""))+1-MIN(IF((CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))>=65)*(CODE(MID(B5,ROW(INDIRECT("A1:A"&LEN(B5))),1))<=90),ROW(INDIRECT("A1:A"&LEN(B5))),"")))
Dạ em cảm ơn nhiều ạ
 
Excel 365 đủ 5 từ
Mã:
=LET(t_0,B5:B12,t_1,TEXTBEFORE(t_0,"-",-1),t_2,REDUCE(TEXTAFTER(t_0,"-",-1),SEQUENCE(10,,0),LAMBDA(x,y,SUBSTITUTE(x,y,""))),t_1&IF(LEN(t_2),"-"&t_2,""))
1672280923446.png
 
Web KT

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

Back
Top Bottom