Microsoft Excel是Microsoft為使用Windows和Apple Macintosh操作系統的電腦編寫的一款電子表格軟件。直觀的界面、出色的計算功能和圖表工具,再加上成功的市場營銷,使Excel成為最流行的個人計算機數據處理軟件。 導讀:說起數據查詢功能,很多小伙伴們都不陌生,知道VLOOKUP, LOOKUP或者INDEX+MATCH等函數可以實現。這一期,小編將會羅列可能出現的各種情況,以事實案例為基礎,全方位解讀數據查詢功能。請耐心觀看,閱讀僅需五分鐘。 本篇將分為以下六個應用場景來逐一介紹 一:從上到下正向查詢(根據姓名查找電話): 從上到下:返回第一個滿足條件的值 正向查詢:查詢鍵[姓名]在查詢值[電話]的左方。 根據zhang3查找時,返回第一個找到的電話13917980013 解析: -VLOOKUP(A16, B$2:C$11, 2, 0):在B$2:C$11查詢區域中,查詢A16,返回查詢區域B$2:C$11中的第二列 -INDEX(C$2:C$11, MATCH(A16, B$2:B$11, 0)):首先查找A16在B$2:B$11查詢區域中所在的行號X,然后返回C$2:C$11中第X行數據 -INDEX(C$2:C$11, MATCH(TRUE, A16=B$2:B$11, 0)):A16=B$2:B$11返回的是{TRUE,FALSE}的數組,MATCH(TRUE, A16=B$2:B$11, 0)返回數組中為TRUE的行號X,然后返回C$2:C$11中第X行數據 注意: Lookup函數對源數據的排序要求比較嚴格,如果源數據順序是打亂的,Lookup函數返回值很可能是錯誤,所以此案例中不能使用Lookup函數。此外,在使用MATCH函數時,如果最后一個參數為1或者-1時,要求第二個參數(查詢區域)是有順序的。 二:從下到上正向查詢(根據姓名查找電話) 從下到上:從上到下查詢返回最后一個滿足條件的值 正向查詢:查詢鍵[姓名]在查詢值[電話]的左方。 根據zhang3查找時,返回最后一個找到的電話13917980003 解析: -LOOKUP(1, 0/(A21=B$2:B$11), C$2:C$11):?0/(A21=B$2:B$11)返回的是{#DIV/0!,0}的數組Arr,Lookup查詢時會自動排除#DIV/0!,然后返回數組中小于等于1的最大值,也就是返回最后一個滿足條件的值。 -INDEX(C$2:C$11, MATCH(1, 0/(A21=B$2:B$11), 1)):和上面公式原理類似。 三:從上到下逆向查詢(根據姓名查找工號) 逆向查詢:查詢鍵[姓名]在查詢值[工號]的右方。 公式: -INDEX(A$2:A$11, MATCH(A26, B$2:B$11, 0)) -INDEX(A$2:A$11, MATCH(TRUE, A26 = B$2:B$11, 0)) 四:從下到上逆向查詢(根據姓名查找工號) 公式: -LOOKUP(1, 0/(A31 = B$2:B$11), A$2:A$11) -INDEX(A$2:A$11, MATCH(1, 0/(A31=B$2:B$11), 1)) 五:多個條件聯合查詢(根據姓名+電話查找工號) 如果查詢條件有多個的時候,怎么做呢?請看下面的公式: 公式: -INDEX(A$2:A$11, MATCH(1, 0/((A40=B$2:B$11)*(B40=C$2:C$11)), 1)) -LOOKUP(1, 0/((A40=B$2:B$11)*(B40=C$2:C$11)), A$2:A$11) -INDEX(A$2:A$11,MATCH(1,(A40=B$2:B$11)*(B40=C$2:C$11), 0)) 六:返回多個查詢結果 當查找到多個結果時,要一次性返回的話,如何做呢?請看下面的動畫演示: 解析: 首先,增加[輔助列重復次數]通過公式COUNTIF(C$2:C2, C2)計算姓名的重復次數。 然后,增加[輔助列姓名],公式:D2&"-"&A2 最后,在D14單元格中輸入公式VLOOKUP(A$14&"-"&ROW(1:1),B$2:E$11,4,0),查詢第一個滿足條件的。然后往下拉,可以找到所有滿足條件的結果。 總結: 這一期主要講了Excel數據查詢的各種情況,用到的函數有:VLOOKUP, LOOKUP, INDEX+MATCH。 Excel整體界面趨于平面化,顯得清新簡潔。流暢的動畫和平滑的過渡,帶來不同以往的使用體驗。 |
溫馨提示:喜歡本站的話,請收藏一下本站!