Bài viết này mô tả cú pháp công thức và cách dùng hàm FIND và FINDB trong Microsoft Excel.
Mô tả
FIND và FINDB định vị một chuỗi văn bản nằm trong chuỗi văn bản thứ hai và trả về số của vị trí bắt đầu của chuỗi văn bản thứ nhất tính từ ký tự thứ nhất của chuỗi văn bản thứ hai.
Quan trọng:
-
Các hàm này có thể không khả dụng ở mọi ngôn ngữ.
-
Hàm FIND nhằm để dùng trong các ngôn ngữ sử dụng bộ ký tự byte đơn (SBCS), còn hàm FINDB nhằm để dùng với những ngôn ngữ sử dụng bộ ký tự byte kép (DBCS). Thiết đặt ngôn ngữ mặc định trong máy tính của bạn sẽ ảnh hưởng tới giá trị trả về theo cách như sau:
-
Hàm FIND luôn luôn đếm mỗi ký tự là 1, cho dù đó là byte đơn hay byte kép, bất kể thiết đặt ngôn ngữ mặc định là gì.
-
Hàm FINDB đếm mỗi ký tự byte kép là 2 khi bạn đã cho phép soạn thảo một ngôn ngữ hỗ trợ DBCS, sau đó đặt nó làm ngôn ngữ mặc định. Nếu không, hàm FINDB đếm mỗi ký tự là 1.
Các ngôn ngữ hỗ trợ DBCS bao gồm Tiếng Nhật, Tiếng Trung (Giản thể), Tiếng Trung (Phồn thể) và Tiếng Hàn.
Cú pháp
FIND(find_text, within_text, [start_num])
FINDB(find_text, within_text, [start_num])
Cú pháp của hàm FIND và FINDB có các đối số sau đây:
-
Find_text Bắt buộc. Văn bản mà bạn muốn tìm.
-
Within_text Bắt buộc. Văn bản có chứa văn bản mà bạn muốn tìm.
-
Start_num Tùy chọn. Chỉ rõ ký tự bắt đầu tìm tại đó. Ký tự thứ nhất của within_text là ký tự số 1. Nếu bạn bỏ qua start_num, thì nó được giả định là 1.
Ghi chú
-
Hàm FIND và FINDB phân biệt chữ hoa chữ thường và không cho phép dùng ký tự đại diện. Nếu bạn không muốn tìm kiếm phân biệt chữ hoa chữ thường hoặc muốn dùng ký tự đại diện, bạn có thể dùng hàm SEARCH và SEARCHB.
-
Nếu find_text là "" (văn bản trống), thì hàm FIND khớp với ký tự thứ nhất trong chuỗi tìm kiếm (đó là ký tự được đánh số là start_num hoặc 1).
-
Find_text không được chứa bất kỳ ký tự đại diện nào.
-
Nếu find_text không xuất hiện trong within_text, thì hàm FIND và FINDB trả về giá trị lỗi #VALUE! .
-
Nếu start_num không lớn hơn không, thì hàm FIND và FINDB trả về giá trị lỗi #VALUE! .
-
Nếu start_num lớn hơn độ dài của within_text, thì hàm FIND và FINDB trả về giá trị lỗi #VALUE! .
-
Dùng start_num để bỏ qua một số lượng ký tự được xác định. Ví dụ về dùng hàm FIND, giả sử bạn đang làm việc với chuỗi ký tự "AYF0093.YoungMensApparel". Để tìm số thứ tự của chữ "Y" thứ nhất trong phần mô tả của chuỗi ký tự, hãy đặt start_num bằng 8 để không tìm kiếm trong phần số sê-ri của văn bản. Hàm FIND bắt đầu tìm từ ký tự 8, tìm find_text ở ký tự kế tiếp và trả về số 9. Hàm FIND luôn luôn trả về số của các ký tự tính từ đầu của within_text, đếm các ký tự mà bạn bỏ qua nếu start_num lớn hơn 1.
Ví dụ
Sao chép dữ liệu ví dụ trong bảng sau đây và dán vào ô A1 của một bảng tính Excel mới. Để các công thức hiển thị kết quả, hãy chọn chúng, nhấn F2 và sau đó nhấn Enter. Nếu cần, bạn có thể điều chỉnh độ rộng cột để xem toàn bộ dữ liệu.
Dữ liệu |
||
---|---|---|
Miriam McGovern |
||
Công thức |
Mô tả |
Kết quả |
=FIND("M",A2) |
Vị trí của chữ "M" thứ nhất trong ô A2 |
1 |
=FIND("m",A2) |
Vị trí của "m" đầu tiên trong ô A2 |
6 |
=FIND("M",A2,3) |
Vị trí của chữ "M" thứ nhất trong ô A2, bắt đầu từ ký tự thứ ba |
8 |
Ví dụ 2
Dữ liệu |
||
---|---|---|
Sứ Cách điện #124-TD45-87 |
||
Cuộn dây Đồng #12-671-6772 |
||
Biến Trở #116010 |
||
Công thức |
Mô tả (Kết quả) |
Kết quả |
=MID(A2,1,FIND(" #",A2,1)-1) |
Trích văn bản từ vị trí 1 tới vị trí "#" trong ô A2 (Sứ Cách điện) |
Sứ Cách điện |
=MID(A3,1,FIND(" #",A3,1)-1) |
Trích văn bản từ vị trí 1 tới vị trí "#" trong ô A3 (Cuộn dây Đồng) |
Cuộn dây Đồng |
=MID(A4,1,FIND(" #",A4,1)-1) |
Trích văn bản từ vị trí 1 tới vị trí "#" trong ô A4 (Biến Trở) |
Biến Trở |