當前位置: 妍妍網 > 辦公

制作了一個萬能的Excel查詢樣版,需要請自取!

2024-03-10辦公

哈嘍,大家好。

今天來分享一個萬能的Excel查詢樣版公式,即任意一個關鍵字就可以將數據尋找出來。

譬如可以尋找編號包括7的人,所有姓趙的人,所有部門是財務的人,所有大專學歷的人等等。

實作這種任意關鍵字尋找,並不需要很復雜的步驟,或者VBA程式碼之類的,只需要一個公式即可。

完整公式為:

=IF(K2="","",FILTER(A:I,IFERROR(SEARCH(K2,A:A),0)+IFERROR(SEARCH(K2,B:B),0)+IFERROR(SEARCH(K2,C:C),0)+IFERROR(SEARCH(K2,D:D),0)+IFERROR(SEARCH(K2,E:E),0)+IFERROR(SEARCH(K2,F:F),0),"無符合條件值"))

千萬不要看著公式很長就被勸退了,其實要理解這個公式只需要三步,下面,跟我們一起來解讀一下吧!

第一階段:關鍵字單列尋找

關鍵字尋找,意味條件為包含關系,就是尋找包含關鍵字字元的數據。因此,通常需要借用SEARCH或者FIND函式來確定是否包含條件字元。

關鍵字單列尋找,就是用關鍵字與某一列數據進行包含判斷尋找。

例如,只在姓名列數據中進行尋找關鍵字,公式為:

=FILTER(A:I,IFERROR(SEARCH(K2,C:C),),0)

SEARCH函式的作用是在一個文本值中尋找另一個指定文本值(不區分大小寫)的位置,得到結果是一個數位。

例如:=SEARCH(K2,C2:C20)得到如圖結果,表示在範圍C2:C20的每個單元格都找一下K2的內容(娜)是否存在,如果沒有返回錯誤值,如果有則返回娜在對應單元格的位置(第幾個字)。

再添加一個IFFERROR函式,將錯誤值變為0(後面有用),公式為=IFERROR(SEARCH(K2,C2:C20),0)

FILTER的第二參數本來應該是一個邏輯值(條件比較得到的就是邏輯值),但是在Excel中,邏輯值和數位之間有個對應關系,0相當於FALSE,非零數相當於TRUE。因此SEARCH得到的非零值就相當於符合尋找條件的值。

所以公式=FILTER(A:I,IFERROR(SEARCH(K2,C:C),0))就能按照關鍵字進行尋找,這一點一定要想明白,假如就是想不明白的話,記下公式套路就行吧。

至此,我們實作了關鍵字單列尋找的結果,距離最終目標之差一步。

第二階段:關鍵字多列尋找。

關鍵字多列尋找,就是用關鍵字分別與多列數據進行包含判斷尋找,只要關鍵字被多列數據的任何一列包含,就會尋找到相應數據。因此各列的包含判斷是「或」關系,用加號來組合它們的判斷結果。

譬如:在上面姓名列尋找的基礎上,我們增加部門列尋找。

完整的公式為:=FILTER(A:I,IFERROR(SEARCH(K2,B:B),0)+IFERROR(SEARCH(K2,C:C),0),0)

如果還要按照其他列尋找的話,只需要繼續加IFERROR和SEARCH這部份即可。

第三階段:解決條件為空等的尋找讓公式更人性化

當前公式,如果條件為空,會返回所有值;如果沒有符合條件的,返回是0。

所以需要調整公式,讓條件為空時返回空;讓沒有符合條件的,顯示為「無符合條件值」。

最終公式:

=IF(K2="","",FILTER(A:I,IFERROR(SEARCH(K2,A:A),0)+IFERROR(SEARCH(K2,B:B),0)+IFERROR(SEARCH(K2,C:C),0)+IFERROR(SEARCH(K2,D:D),0)+IFERROR(SEARCH(K2,E:E),0)+IFERROR(SEARCH(K2,F:F),0),"無符合條件值"))

好的,以上就是今天的內容,關於FILTER函式的基礎用法,大家可以點選下方連結檢視:

溫馨提示:
憑借任意一個關鍵詞查詢數據的優點是操作簡單;缺點是不夠精準,尤其是在包含多列數位(含日期)的表格中用數位查詢,準確度低。

粉絲福利:免費課程,掃碼領取學習