字符串對比、查找在我們工作中經常用到,比如查找單元格A1中是否包含字符A的一對一查找,也有A1中是否包含A或B或C其中之一的一對多查找。在講「一對多」查找之前,我們有必要先了解一下簡單的字符串查找:「一對一」查找。
例:如下圖所示。A列是包括省名的地址,要求在B列判斷是否為「河南」省的地方。
分析:
1 在excel裡判斷字符串是否包含另一個字符的是FIND函數,另外也可以用COUNTIF函數的模糊查找實現,這裡我們介紹FIND函數的應用。
FIND函數的基本語法為:
FIND(查找的字符串,在哪個字符串裡查找,從第幾位開始查找)
注意:FIND函數返回的是子字符串在被查找字符串中的位置,如在"ABCD"裡查找B,FIND("B","ABCD")得到的結果是B的位置2,如果查找不到,比如FIND("E","ABCD")則返回錯誤值"#VALUE".
本例中我們我們設置公式後的效果如下圖所示。
公式:B3 =FIND("河南",A3)
我們最終要顯示的是「是」或「否」,那麼怎麼判斷是否查找到呢?我們可以用COUNT函數來判斷FIND返回的結果。看來我們還得學習一下COUNT函數的用法。
COUNT函數是統計一組數中有多少個數字
COUNT(A2:A5) 的結果是0,上圖中A列沒有數字
COUNT(B2:B5) 的結果是2,上圖B列有2個數字。
在EXCEL幾百個函數中,大部分「怕」錯誤值,如果引用的數據源中含有錯誤值,結果就是錯誤值。如SUM(B2:B5)的結果是錯誤值,而非2。
而COUNT函數卻可以對錯誤值免疫,就象上圖中即使B列有錯誤值,也可以計算出數字的個數。=count(b2:b2) 結果為2
所以本題中,我們就可以利用COUNT函數這個特點來判斷查找是否成功,COUNT(FIND(..))的結果如果是0(FIND查找不到會生成錯誤值,countif("#VALUE「)的結果是0)說明沒有查找到,否則(FIND查找到會返回代表位置的數字,countif(數字)的結果是1)可以查找到。
B3公式:=IF(COUNT(FIND("河南",A3))=0,"否","是")
蘭色說:判斷是否為錯誤值,也可以用iserror等信息函數實現判斷,這裡我們用count是為明天「一對多」查找鋪墊的。另外,公式中也用了IF函數,如果不了解IF函數的用法,可以在微信回復「 IF 」 查看IF的相關教程
明日預告: excel裡字符串查找的實現(一對多)
思考:上例中是查找A列是否包括「河南」一個省份,如果要查找是否包括「河南,河南,上海,山東....」多個地區呢?如果你想到答案就回復一下!明天我們講解這個問題。
同學們的支持就是蘭色幻想的動力,也是我們excel精英培訓微信平臺全體編輯和作者的動力。同學們如果覺得好,就點右上角的圖標 "..." (或點方框箭頭圖標),再點「分享到朋友圈」就分享給你的朋友們了。分享後請回復「已分享」,蘭色準備把微信精選內容錄成一套視頻,將來贈送給經常參與分享的同學^_^。
如果你還沒有加我們的關注,就點本文標題下的 「Excel精英培訓後的 → 」(向右箭頭),然後再點「關注」按鈕就加入我們學習exce的l隊伍裡了,每天都會收到我們精心準備的excel原創教程。期待著你的加入!