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

本篇文章給大家帶來了關于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

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享