Kiểm tra ô cho một chữ cái cụ thể hoặc bộ chữ cái


124

Trong Bảng tính Google, tôi muốn sử dụng một công thức sẽ xuất ra một văn bản hoặc số nhất định nếu một ô nhất định có chứa các chữ cái nhất định.

Ví dụ: nếu tôi đặt =IF(A1="Black";"YES";"NO")và A1 bằng "Đen" - nó xuất ra "CÓ" chính xác. Tuy nhiên khi tôi đặt =IF(A1="Bla";"YES";"NO")nó ra "KHÔNG". Có công thức nào tôi có thể sử dụng mà tôi có thể nói một cái gì đó giống như =IF(A1 CONTAINS "Bla";"YES";"NO")vậy để nó xuất ra "CÓ".

Câu trả lời:


161

Bạn có thể sử dụng RegExMatch:

=IF(RegExMatch(A1;"Bla");"YES";"NO")

74

Một số tùy chọn không có REGEXMATCH, vì bạn có thể muốn không phân biệt chữ hoa chữ thường và không muốn nói blasthoặc ablativekích hoạt a YES. Sử dụng dấu phẩy làm dấu phân cách, như trong OP và hiện tại bỏ qua điều kiện IF:

Đầu tiên rất giống với câu trả lời của @ user1598086:

=FIND("bla",A1)

Là trường hợp nhạy cảm nhưng trả về #VALUE! thay vì NOvà một số chứ không phải YES(cả hai đều có thể được thay đổi thành NO / YES tương ứng).

=SEARCH("bla",A1)  

Trường hợp không nhạy cảm, vì vậy đối xử Blackblackbình đẳng. Trả về như trên.

Cái trước (cho tương đương sau) để cho biết có blahiện diện sau ba ký tự đầu tiên trong A1 hay không:

=FIND("bla",A1,4)  

Trả về một số cho blazer, blacknhưng #VALUE!cho blazer, blue.

Để Blachỉ tìm khi một từ hoàn chỉnh tự nó (nghĩa là giữa các khoảng trắng - không phải ở đầu hoặc cuối của 'câu'):

=SEARCH(" Bla ",A1) 

Vì lợi nhuận trong tất cả các trường hợp ở trên là một số ("được tìm thấy", nên được YESưu tiên) hoặc #VALUE!chúng tôi có thể sử dụng ISERROR để kiểm tra #VALUE!trong công thức IF, ví dụ như lấy ví dụ đầu tiên ở trên:

 =if(iserror(FIND("bla",A1)),"NO","YES")  

Dài hơn regexmatchnhưng các thành phần dễ dàng điều chỉnh.


@KaiNoack bạn cần thay thế ;bằng ,Bảng tính Google
Michael

@pnuts câu trả lời tuyệt vời!
Michael

2

Bạn có thể sử dụng công thức sau đây,

=IF(ISTEXT(REGEXEXTRACT(A1; "Bla")); "Yes";"No")

-8

Chỉ cần sử dụng = IF(A1="Bla*","YES","NO"). Khi bạn chèn dấu hoa thị, nó hoạt động như một thẻ đại diện cho bất kỳ số lượng ký tự nào sau văn bản đã chỉ định.


2
Điều này không hoạt động. Đã thử: = if (N7 = "N *", 0,1) trên giá trị ô là "KHÔNG, cảm ơn" và nó trả về "1"
Clay Nichols
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.