首頁 >專題 >excel >簡單搞定Excel任意條件查數據

簡單搞定Excel任意條件查數據

WBOY
WBOY轉載
2022-07-11 11:25:133932瀏覽

本篇文章為大家帶來了關於excel的相關知識,其中主要整理了任意條件查資料的相關問題,資料查詢怎麼實現左邊是員工資訊表,右邊是查詢區域,希望在G4輸入任意姓名或任意部門,就能在右側提取出符合條件的全部記錄,下面一起來看一下,希望對大家有幫助。

簡單搞定Excel任意條件查數據

相關學習推薦:excel教學

#分享一個資料查詢相關的內容,先看資料來源:

簡單搞定Excel任意條件查數據

左側是員工資料表,右側是查詢區域,希望在G4輸入任意姓名或任意部門,就能在右側提取出符合條件的全部記錄。

簡單搞定Excel任意條件查數據

要實現這樣的資料擷取效果,其實很簡單,接下來咱們就看看具體的操作步驟。

步驟1

在G4儲存格輸入要查詢的內容,例如 銷售部。

步驟2

在第一行資料的左側,本例是A4儲存格,輸入下列公式,向下拖曳:

=(C4=G $4) (B4=G$4) A3

簡單搞定Excel任意條件查數據

公式是什麼意思?

如果C4單元格中的部門等於G4要查詢的部門,或者是B4單元格中的姓名等於G4單元格要查詢的姓名,就在上一個單元格的基礎上加上1,否則仍然是上一個單元格中的內容。

觀察公式下拉後的效果,可以看到,只要C列的部門名稱等於G4單元格中的部門,得到的結果正好是一串遞增的序號1……2……3……

這些序號幹嘛用呢?不急,往下看。

步驟3

在I4單元格輸入公式,向右向下複製,就可以得到查詢結果了:

=IFERROR(VLOOKUP(ROW(A1), $A:$E,COLUMN(B1),0),"")

簡單搞定Excel任意條件查數據

#這個公式又是啥意思呢?

這裡面的主角是VLOOKUP函數,要查詢的內容是ROW(A1),ROW的作用是回傳參數所在的行號,這裡得到的結果就是A1的行號-1,當公式向下複製時,會依序變成ROW(A2)、ROW(A3)……,結果就是從1開始的遞增序號1、2、3……。

也就是說,在不同行中VLOOKUP函數的查找內容是不一樣的,在第四行時,查找的內容是1,公式到了第五行,查詢的內容就是2了。

再看看VLOOKUP函數查詢的區域是哪裡呢? $A:$E ,這個寫法表示A~E列的整列區域,並且使用了絕對引用。

說到這裡,有小夥伴們已經知道咱們前面用公式得到的那些序號是乾嘛用的了,對,就是協助VLOOKUP查詢用的。

前面的序號特點是每遇到一個符合條件的記錄,序號就加上1,而VLOOKUP要查詢的內容就是序號1、2、3……

#再來看COLUMN (B1)是乾啥用的呢?她的作用和ROW函數類似,是傳回參數的列號的,COLUMN(B1),得到的就是B1的列號2。公式向右複製時,會依序變成COLUMN(C1)、COLUMN(D1)……,結果就是從2開始的遞增序號2、3、4……

得到的序號再給VLOOKUP函數當小三,不對不對,是當成第三參數,用來指定傳回查詢區域哪一列的內容。

當公式在I列時,返回查詢區域第二列的內容,公式向右複製到了J列,那就是返回查詢區域第三列的內容了,以此類推。

小夥伴可能會說了,A欄位還有那麼多重複的序號啊,沒關係,因為VLOOKUP函數有個特點,就是如果有多個符合條件的記錄,只會回傳第一條。所以在I4單元格查詢1的時候,得到序號1對應的姓名蘭花,在I5單元格查詢2的時候,得到序號2對應的姓名棗花…

最外面的這個IFERROR是乾啥用的呢?她啊,是用來給VLOOKUP屏蔽錯誤值的。

因為VLOOKUP每一行中的查詢序號都不一樣,當公式一直下拉時,這個序號就會不斷增加,當查詢的序號在A列沒有出現時,表示左側記錄中沒有這麼多符合條件的內容了,公式會回傳錯誤值。所以,咱們使用IFERROR函數把錯誤值變成了空白文字。

相關學習推薦:excel教學

以上是簡單搞定Excel任意條件查數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:excelhome.net。如有侵權,請聯絡admin@php.cn刪除