Hướng dẫn về hàm tách chuỗi (1 người xem)

Người dùng đang xem chủ đề này

lolemcachcach

Thành viên mới
Tham gia
9/12/09
Bài viết
21
Được thích
6
Các anh/chị trong diễn đàn làm ơn cho em hỏi trong file của em dưới đây, e muốn tách lấy tên tỉnh, em đã dùng hàm right và hàm search vậy mà k hiểu sao mỗi dòng một kết quả khác nhau ạ. Mong mọi người chỉ giáo giúp em sai ở đâu ạ. Cảm ơn mọi người!
 

File đính kèm

Dùng cái này:
=TRIM(RIGHT(SUBSTITUTE(A2,"-",REPT(" ",100)),100))
 
Dùng cái này:
=TRIM(RIGHT(SUBSTITUTE(A2,"-",REPT(" ",100)),100))
em cảm ơn anh ạ! anh chỉ giáo e đã làm đc rồi, nhưng để hiểu tại sao lại như vậy thì quả thật e còn thiếu rất nhiều kiến thức excel. e sẽ tìm hiểu thêm nữa. có gì k hiểu, e mong anh lại chỉ giáo ạ!
 
à, và mong bác chỉ giúp cách dùng các hàm của e ở trên sai ở đâu mà k ra đúng kết quả ạ? có cách nào sửa lỗi với 2 hàm trên k ạ?
 
à, và mong bác chỉ giúp cách dùng các hàm của e ở trên sai ở đâu mà k ra đúng kết quả ạ? có cách nào sửa lỗi với 2 hàm trên k ạ?

Bạn có 2 cái sai

1. Sai do không hiểu đúng Search (tôi đoán là bạn muốn tìm "-" cuối cùng)
Bạn có
Mã:
=RIGHT(A2;SEARCH("-";A2)-1)

Khi bạn bỏ thông số thứ 3 trong hàm Search tức là bắt đầu tìm từ ký tự đầu tiên. Giả sử
A2 = "Hoa Quy Hoa Qua - Ngu Hanh Son - Da Nang"
Tức bắt đầu tìm từ ký tự H (Hoa ...). Và hàm sẽ tìm thấy ký tự "-" đầu tiên sau từ "Qua" (không phải là tìm thấy "-" sau từ Son). Tức hàm trả về giá trị 17. Lúc này ta có
Mã:
=RIGHT(A2;SEARCH("-";A2)-1) = RIGHT(A2;[COLOR=#ff0000]17[/COLOR]-1) = RIGHT(A2;[COLOR=#ff0000]16[/COLOR]) = "nh Son - Da Nang" ([COLOR=#ff0000]16[/COLOR] ký tự bên phải)

2. Cái sai thứ 2 là lấy số ký tự không đúng.
Thậm chí nếu chỉ có 1 ký tự "-" trong chuỗi thì cũng sai.
Nếu A2 = aaaaaaaaaa - bbbbb và bạn muốn tách bbbbb
Thì phải là
Mã:
=RIGHT(A2;LEN(A2) - SEARCH("-";A2)-1)

Vì Search trả về vị trí của "-", tức toàn bộ chuỗi kể từ ký tự đầu tới ký tự " " sau ký tự "-" (chuỗi tô đỏ) có độ dài là SEARCH("-";A2) + 1. Tức phần sau "- " (bbbbb) có độ dài là LEN(A2) - SEARCH("-";A2)-1
------------
Tất nhiên bạn không biết được mỗi chuỗi cụ thể có 1, 2 hay nhiều hơn ký tự "-"
 

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

Back
Top Bottom