Lọc ký tự ở giữa chuỗi, số lượng ký tự cần lọc không cố định

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

nguyenthinu1984

Thành viên mới
Tham gia
10/11/20
Bài viết
13
Được thích
3
Em có bảng dữ liệu và cần lọc ra ký tự số loại ở giữa của chuỗi, tuy nhiên số lượng ký tự cần lọc lại không cố định, Anh/Chị chỉ giúp sử dụng hàm nào với ạ?12.PNG
 

File đính kèm

  • Lọc ký tự số loại.xlsx
    10.2 KB · Đọc: 18
Em có bảng dữ liệu và cần lọc ra ký tự số loại ở giữa của chuỗi, tuy nhiên số lượng ký tự cần lọc lại không cố định, Anh/Chị chỉ giúp sử dụng hàm nào với ạ?View attachment 296617
Thử xem, hy vọng đúng ý.
1 số chỗ Dữ liệu không đồng nhất nên kết quả có thể không ra.
C3=MID(B3;SEARCH("LOẠI : ";B3;1)+7;SEARCH("|";B3;SEARCH("LOẠI : ";B3;1)+7)-(SEARCH("LOẠI : ";B3;1)+7))
Copy cho các ô còn lại.
Đã chỉnh sửa lại tý chút là ra. Thiếu dấu " (" ở sau dấu " -" và ") " ở cuối.
 
Lần chỉnh sửa cuối:
Em có bảng dữ liệu và cần lọc ra ký tự số loại ở giữa của chuỗi, tuy nhiên số lượng ký tự cần lọc lại không cố định, Anh/Chị chỉ giúp sử dụng hàm nào với ạ?View attachment 296617
* thử 2 công thức cho hàng số 7:
=SUBSTITUTE(TRIM(MID(SUBSTITUTE(TRIM(B7),"|",REPT(" ",255)),255*2,255)),"SỐ LOẠI : ","")
=TEXTBEFORE(TEXTAFTER(TRIM(B7),"SỐ LOẠI : "),"|")
*** Các công thức chỉ đúng với quy luật dữ liệu được xuất ra tự động hoặc tuân thủ theo quy tắc nào đó; còn dữ liệu tại cột B do bạn nhập thủ công nhập bằng tay, nên dùng hàm VBA để lọc hết các trường hợp
 
Em có bảng dữ liệu và cần lọc ra ký tự số loại ở giữa của chuỗi, tuy nhiên số lượng ký tự cần lọc lại không cố định, Anh/Chị chỉ giúp sử dụng hàm nào với ạ?
Bạn dùng công thức này xem đúng chưa.
=LEFT(REPLACE(B3;1;FIND("SỐ LOẠI";B3;1)+9;"");FIND("|";REPLACE(B3;1;FIND("SỐ LOẠI";B3;1)+9;"");1)-1)
 

File đính kèm

  • Lọc ký tự số loại.xlsx
    10.8 KB · Đọc: 4
  • z4870291204821_e90b57dabefe217a4648fd3054856c19.jpg
    z4870291204821_e90b57dabefe217a4648fd3054856c19.jpg
    143.9 KB · Đọc: 4
Người hỏi bài quá hời hợt vì nay là T7, có lẽ kế hoạch đi chơi đã lên kế hoạch cả rồi, thôi thì anh em nào không có chỗ đi chơi thì rèn luyện tí cho tay dẻo các bác ạ:
Mã:
C3=TRIM(MID(B3;SEARCH(":";B3;SEARCH(":";B3)+1)+2;IFERROR(SEARCH("|";B3;SEARCH(":";B3;SEARCH(":";B3)+1)-1)-(SEARCH(":";B3;SEARCH(":";B3)+1)+2);100)))
 
Thử xem, hy vọng đúng ý.
1 số chỗ Dữ liệu không đồng nhất nên kết quả có thể không ra.
C3=MID(B3;SEARCH("LOẠI : ";B3;1)+7;SEARCH("|";B3;SEARCH("LOẠI : ";B3;1)+7)-(SEARCH("LOẠI : ";B3;1)+7))
Copy cho các ô còn lại.
Đã chỉnh sửa lại tý chút là ra. Thiếu dấu " (" ở sau dấu " -" và ") " ở cuối.
1699792464075.pngCảm ơn ạ, em đã làm được, chính xác, tuy nhiên có 2 chỗ không ra kết quả. tuy nhiên công thức của anh/chị CANTL chia sẻ là ra đủ kết quả luôn.

Người hỏi bài quá hời hợt vì nay là T7, có lẽ kế hoạch đi chơi đã lên kế hoạch cả rồi, thôi thì anh em nào không có chỗ đi chơi thì rèn luyện tí cho tay dẻo các bác ạ:
Mã:
C3=TRIM(MID(B3;SEARCH(":";B3;SEARCH(":";B3)+1)+2;IFERROR(SEARCH("|";B3;SEARCH(":";B3;SEARCH(":";B3)+1)-1)-(SEARCH(":";B3;SEARCH(":";B3)+1)+2);100)))
1699792577364.png
Anh/Chị thông cảm, vấn đề là em chưa biết làm thế nào khi phải lọc chuỗi khi không cố định ký tự , ko hiểu nên ko diễn tả được kỹ hơn về vướng mắc nên mới bị cho là hời hợt, Cảm ơn Anh/Chị đã chỉ giúp, CÔNG THỨC ĐÃ RA KẾT QUẢ CHÍNH XÁC TOÀN BỘ. em cảm ơn nhiều nhé.
 

File đính kèm

  • 1699791671926.png
    1699791671926.png
    192.2 KB · Đọc: 8
  • 1699791871393.png
    1699791871393.png
    20.9 KB · Đọc: 7
  • 1699791842001.png
    1699791842001.png
    20.9 KB · Đọc: 4
  • 1699791823375.png
    1699791823375.png
    76 KB · Đọc: 8
Lần chỉnh sửa cuối:
View attachment 296657Bị báo lỗi như vậyaj, Anh/Chị thông cảm là em không hiểu về mấy công thức nâng cao, hàm mid thông thường thì làm ko ra, và em cũng ko biết diễn tả chính xác cái lỗi của công thức nữa
Xem file .Lưu ý có thể trong công thức trong file của tôi là dấu ";" , còn của bạn thì có thể là ",". Hãy thay bằng dấu thích hợp.
 

File đính kèm

  • Lọc ký tự số loại.xlsx
    11.8 KB · Đọc: 3
Chỗ nào thớt có thể chỉ chính xác để người giúp cống hiến tiếp không?
hihi, hôm qua là bị bí dí quá nên em ngơ một chút, máy của em các phần của công thức được thể hiện bằng dấu phẩy (,) nhưng công thức các anh/chị chia sẻ là dấu chấm phẩy (;) nên làm ko ra , với lại em dốt công thức ghép nên không hiểu tại sao, nhưng hôm nay Anh/Chị HUONGHCKT & CANTL đã chỉ ra công thức có kết quả đúng rồi ạ
Bài đã được tự động gộp:

Người hỏi bài quá hời hợt vì nay là T7, có lẽ kế hoạch đi chơi đã lên kế hoạch cả rồi, thôi thì anh em nào không có chỗ đi chơi thì rèn luyện tí cho tay dẻo các bác ạ:
Mã:
C3=TRIM(MID(B3;SEARCH(":";B3;SEARCH(":";B3)+1)+2;IFERROR(SEARCH("|";B3;SEARCH(":";B3;SEARCH(":";B3)+1)-1)-(SEARCH(":";B3;SEARCH(":";B3)+1)+2);100)))
Kết quả chính xác toàn bộ, cảm ơn Anh/Chị nhiều nhé.
Bài đã được tự động gộp:

Cái này sử dụng Text to Columns qua 2 công đoạn với chưa đầy 1 phút là xong
Em chưa hiểu nhiều về excel nâng cao nên anh chia sẻ vậy em cũng kok hiểu j ạ :rolleyes:, cảm ơn anh đã chia sẻ.
 
Người ta có công đem đồ thực tập đưa lên đây cho quý vị thi triển công thức khủng.
Tôi không thích công thức khủng, lại thấy bên trên có dùng hàm 365 nên ngứa tay

=SUBSTITUTE(INDEX(TEXTSPLIT(B3,"|"),,3),"SỐ LOẠI : ","")

Không có dòng lỗi, chỉ có dòng ra kết quả kỳ quặc, là do dữ liệu không chuẩn:
Tất cả đều chứa "SỐ LOẠI : ", nhưng 1 dòng là "SỐ LOẠI: " và 1 dòng xuất hiện đâu ra "Năm sản xuất" mà thiếu 1 dấu |
 
...
Không có dòng lỗi, chỉ có dòng ra kết quả kỳ quặc, là do dữ liệu không chuẩn:
Tất cả đều chứa "SỐ LOẠI : ", nhưng 1 dòng là "SỐ LOẠI: " và 1 dòng xuất hiện đâu ra "Năm sản xuất" mà thiếu 1 dấu |
Đọc cái tiêu đề là biết dữ liệu không chuẩn rồi.
Thớt không biết tự dọn rác của mình sao mà phải dọn giùm?
 
Web KT
Back
Top Bottom