Excel函數學習8:SEARCH函數
SEARCH函數在另一個文本字元串中查找文本字元串,如果找到則返回其位置,不區分大小寫。
什麼情況下使用SEARCH?
SEARCH函數在字元串中查找另一字元串,可以:
在字元串中找到另一個字元串——不區分大小寫
在搜索中使用通配符
在搜索文本中指定開始數字
SEARCH函數的語法
SEARCH函數的語法如下:
SEARCH(find_text,within_text,start_num)
§ind_text是要搜索的文本
§within_text是供搜索的字元串
§如果忽略start_num,那麼從第一個字元開始搜索
SEARCH函數陷阱
SEARCH函數返回第一個匹配的字元串的位置,忽略大小寫。如果想要區分大小寫的搜索,那麼使用FIND函數。
示例1: 在字元串中查找文本
使用SEARCH函數查找文本字元串中的文本。本例中,在單元格B2的文本字元串中查找單元格B5中的單個字元。
=SEARCH(B5,B2)
如果找到文本,那麼SEARCH函數返回該文本在文本字元串中開始出現的位置的數字。如果沒有找到,那麼結果為#VALUE!錯誤。
可以使用IFERROR函數嵌套SEARCH函數,如果結果是一個錯誤,那麼顯示一條消息。IFERROR函數在Excel 2007及更新的版本中可用。對於更早的版本,可以使用IF函數和ISERROR函數。
=IFERROR(SEARCH(B5,B2),」NotFound」)
示例2: 在SEARCH中使用通配符
檢查SEARCH函數結果的另一種方式是結合使用ISNUMBER函數。如果找到字元串,那麼SEARCH函數的結果是一個數字,因此ISNUMBER函數的結果為TRUE。如果沒有找到文本,那麼SEARCH函數的結果是錯誤值,ISNUMBER函數返回FALSE。
也可以在參數find_text中使用通配符。*(星號)代表任意數量的字元(包括0個),而?(問號)代表單個的字元。
本例中使用 * 通配符,在街道地址中將會找到所有的central、center和centre。
=ISNUMBER(SEARCH($E$2,B3))
示例3: 為SEARCH指定開始數字
通過在ISNUMBER函數前面輸入兩個減號(雙一元符號),能夠替換TRUE或者FALSE而返回1或者0。那麼,在單元格E2中SUM函數可以統計找到的文本字元串的記錄數。
本例在列B中為City(城市)和Occupation(職業),查找含有單元格E1中輸入的文本字元串的所有職業。在單元格C2中的公式是:
=--ISNUMBER(SEARCH($E$1,B2))
這個公式查找到包含「bank」的字元串,但是這些字元串的一部分是City名,不是職業。
在每個城市名之後有一個管道符,因此能夠為此添加一個SEARCH函數,其返回的位置能夠被作為主SEARCH函數的start_number參數使用,因此,在搜索時城市將被忽略。
現在,使用修訂的公式,僅統計職業中含有「bank」的行。
=--ISNUMBER(SEARCH($E$1,B2,SEARCH(「|」,B2)))
--------------------------------------
如果您對本文介紹的內容有什麼建議或好的示例,歡迎發送郵件給我:xhdsxfjy@163.com。
您也可以在本文下發表留言,留下您的足跡。
轉載本文請聯繫我或者註明出處。
推薦閱讀:
※Excel里所有SUM族函數詳解,學會它們,你會變得更帥
※你所不知道關於Excel日期格式大變身的秘密
※Excel高效實戰應用:VBA一鍵自動匯總多表問卷調查結果(含案例下載)
※Excel非連續單元格數據求和技巧