Hàm Search và Hàm SearchB trong excel

Thứ năm - 10/10/2013 23:00
chúng ta đã làm quen với 2 Hàm Find và FindB để tìm kiếm và định vị ký tự hoặc chuỗi văn bản trong một chuỗi khác. Hôm nay chúng ta làm quen với 2 Hàm Search và Hàm SearchB

Ở bài học trước chúng ta đã làm quen với 2 hàm tìm kiếm và định vị ký tự hoặc chuỗi văn bản trong một chuỗi khác đó là Hàm FindHàm FindB. Hôm nay chúng ta làm quen với 2 hàm nữa cũng có chức năng giống như vậy tuy nhiên 2 Hàm này có sự khác biệt về cách trả về vị trí của chuỗi văn bản cần tìm.

Trước tiên ta ôn lại cú pháp của 2 Hàm Find và Hàm FindB

Cú pháp:

FIND(find_text,within_text,start_num)

FINDB(find_text,within_text,start_num)

Và cú pháp của Hàm SearchHàm SearchB cũng tương tự như vậy, bạn xem nhé

SEARCH(find_text,within_text,start_num)

SEARCHB(find_text,within_text,start_num)

Và ý nghĩa của các đối số:

Find_text Là đoạn văn, 1 Ký tự, 1 từ, bạn muốn tìm kiếm vị trí của nó

Within_text : Là đoạn văn, hoặc một chuỗi các ký tự cần mà để bạn tìm kiếm

Start_num : Là vị trí bắt đầu tìm. Tham số này rất quan trọng vì nó giúp giới hạn việc tìm kiếm và cho ra kết quả ta mong muốn.

Điểm mới của 2 hàm này là: Không phân biệt chữ, hoa chữ thường còn hàm Find và Hàm FindB có phần biệt chữ hoa, chữ thường nhé


Hàm FindB và Hàm SearchB có xét đến Double-Byte C-haracter Set. (Ký tự mang 2 bytes: Trung Quốc, Hàn Quốc, Nhật Bản)

Hãy xem ví dụ trong Hàm FindB

Bây giờ ta xét ví dụ nhé: Ở đây thay vì nhập các tham số trực tiếp vào hàm, tôi để các tham số này dưới dạng tham chiếu vào các ô

Cụ thể:

Find_Text = B1 hoặc C1 Hoặc D1 hoặc E1
Within_Text = B2
Start_Num = B3 hoặc C3

Hàm Search và Hàm SearchB


Trường hợp 1:
- Khi Find_Text là chữ n=B1 (in thường) và Start_Num = 1(B3), thì cả 4 hàm đều cho biết vị trí find_text là 1 trong chuỗi "nuoc Viet Nam"

- Khi Find_Text là chữ a=C1 (in thường) và Start_Num = 1 (B3), thì cả 4 hàm đều cho biết vị trí find_text là 12 trong chuỗi "nuoc Viet Nam"

- Khi Find_Text là chữ N=D1 (in Hoa) và Start_Num = 1(B3), thì lúc này có sự khác biệt, Hàm Search
- Khi Find_Text là chữ b=E1 (in thường) và Start_Num = 2(C3), thì cả 4 hàm đều trả về #Value: Không tìm thấy chữ b trong chuỗi "nuoc Viet Nam"

 Ứng dụng của cách hàm tìm kiếm này trong cách hàm xử lý chuỗi rất hay, Bạn hãy đọc cách ứng dụng của nó qua các Hàm Left, Hàm Right, Hàm Mid v.v.

 Ở đây tôi giới thiệu một ứng dụng nhỏ của nó dùng trong  Hàm Replace hoặc Hàm Substitute

Ta tìm chữ n - in thường trong đoạn "nuoc Viet Nam" và thay thế chữ n thành chữ N

Lúc này ta nên nghĩ đến hàm Find hoặc Hàm FindB có phân biệt chữ Hoa và chữ Thường nhé
=REPLACE("nuoc Viet Nam",Find("n","nuoc Viet Nam",1),1;"N")

Và kết quả sẽ là: Nuoc Viet Nam.

Bạn hãy Copy và xem kết quả để kiểm chứng

yes Thêm một lưu ý nữa, ở phần trên thì chúng ta chỉ cho hàm tìm kiếm 1 ký tự, vậy nếu ta yêu cầu tìm vị trí của 1 chữ thì như thế nào nhỉ.

=Search("Viet","nuoc Viet Nam",1)

=SEARCH("Viet Nam","nuoc Viet Nam",1)

Và so với 

=SEARCH("V","nuoc Viet Nam",1)

Cả 3 công thức trên đều trả về cùng kết quả =6 vì sao vậy,

Khi Find_text có nhiều hơn 1 ký tự (1 khối ký tự) thì Hàm cũng sẽ tìm chính xác cả một khối và trả về vị trí của khối đó nếu tìm thấy.

Vị trí của khối find_text chính là vị trí ký tự đầu tiên của khối so với chuỗi văn bản Within_text nhé.

Ở ví dụ trên, Ký tự đầu tiên của khối Find_text "Viet" và "Viet Nam" là chữ "V"=6


Chúc bạn thành công.
 

Tác giả bài viết: Minh Phú

Chú ý: Việc đăng lại bài viết trên ở website hoặc các phương tiện truyền thông khác mà không ghi rõ nguồn http://aneedz.com là vi phạm bản quyền

Tổng số điểm của bài viết là: 0 trong 0 đánh giá

Click để đánh giá bài viết

  Ý kiến bạn đọc

Mã bảo mật   
Thống kê
  • Đang truy cập48
  • Hôm nay6,773
  • Tháng hiện tại64,557
  • Tổng lượt truy cập1,585,409
Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây