逆向查詢那些事兒 在日常的Excel函數(shù)應(yīng)用中,,最常用的就是查詢類函數(shù),比如說根據(jù)工號查詢姓名,、根據(jù)學(xué)生查詢成績,、根據(jù)男豬腳查詢女一號等等。 說到查詢類函數(shù),,大家對VLOOKUP一定不會陌生,,這可是人見人愛花見花開的函數(shù)。下面這個(gè)圖中,,就是根據(jù)工號查詢姓名的典型應(yīng)用: G2單元格公式為 =VLOOKUP(F2,A2:D10,2,0) 意思就是以F2單元格的工號作為查詢值,,以A2:D10為查找區(qū)域,在首列中找到與F2單元格相同的工號,,然后返回這個(gè)區(qū)域中與之對應(yīng)的第二列(也就是姓名所在列)的姓名,。 如果我們以姓名作為查找值,需要在這個(gè)區(qū)域中查找和姓名對應(yīng)的工號,,該如何使用公式呢,?因?yàn)?/span>VLOOKUP函數(shù)要求查詢值必須處于查詢區(qū)域的首列,再使用普通方法就無法完成要求了,,今天就和大家說說,,關(guān)于逆向查詢的幾種方法。
方法一使用IF函數(shù)重新構(gòu)建數(shù)組,。 G2使用公式為: =VLOOKUP(F2,IF({1,0},B2:B10,A2:A10),2,0) 這個(gè)公式的用法在之前的內(nèi)容中咱們曾經(jīng)講過,,就是用IF({1,0},B2:B10,A2:A10),返回一個(gè)姓名在前,,工號在后的多行兩列的內(nèi)存數(shù)組,,使其符合VLOOKUP函數(shù)的查詢值處于查詢區(qū)域首列的條件,再用VLOOKUP查詢即可,。 方法二使用choose函數(shù)重新構(gòu)建數(shù)組,。 G2使用公式為: =VLOOKUP(F2,CHOOSE({1,2},B2:B10,A2:A10),2,0) 這個(gè)公式的原理也是重新構(gòu)建一個(gè)內(nèi)存數(shù)組,使其符合VLOOKUP函數(shù)的查詢值處于查詢區(qū)域首列的條件,。 方法三INDEX+MATCH結(jié)合使用,。 G2使用公式為: =INDEX(A2:A10,MATCH(F2,B2:B10,)) 公式首先使用MATCH函數(shù)返回F2單元格姓名在B2:B10單元格中的相對位置6,,也就是這個(gè)區(qū)域中所處第幾行。再以此作為INDEX函數(shù)的索引值,,從A2:A10單元格區(qū)域中返回對應(yīng)位置的內(nèi)容,。這個(gè)公式是最常用的查詢公式之一,看似繁瑣,,實(shí)際查詢應(yīng)用時(shí),,由于其組合靈活,可以完成從左至右,、從右到左,、從下到上、從上到下等多個(gè)方向的查詢,。 方法四所向披靡的LOOKUP函數(shù),。 G2使用公式為: =LOOKUP(1,0/(F2=B2:B10),A2:A10) 這是非常經(jīng)典的LOOKUP用法,首先用F2=B2:B10得到一組邏輯值,,再用0除以這些邏輯值,,得到由0和錯(cuò)誤值組成的內(nèi)存數(shù)組。 再用1作為查詢值,,在內(nèi)存數(shù)組中進(jìn)行查詢,。如果 LOOKUP 函數(shù)找不到查詢值,則它與查詢區(qū)域中小于或等于查詢值的最大值匹配,,因此是以最后一個(gè)0進(jìn)行匹配,,并返回A2:A10中相同位置的值。 如果有多條符合條件的結(jié)果,,前三個(gè)公式都是返回首個(gè)滿足條件的值,,而第四個(gè)公式則是返回最后一個(gè)滿足條件的值,這一點(diǎn)大家在使用時(shí)還需要特別注意,。 好了,,今天的分享就到這里,祝大家周日開開心心,。 |
|