技術(shù)員聯(lián)盟提供win764位系統(tǒng)下載,win10,win7,xp,裝機(jī)純凈版,64位旗艦版,綠色軟件,免費(fèi)軟件下載基地!

當(dāng)前位置:主頁 > 教程 > 軟件教程 > Excel教程 >

對(duì)Excel表中數(shù)據(jù)一對(duì)多查詢的方法

來源:技術(shù)員聯(lián)盟┆發(fā)布時(shí)間:2018-05-10 18:39┆點(diǎn)擊:

  對(duì)Excel表中數(shù)據(jù)一對(duì)多查詢的方法

         舉個(gè)例子,如下圖,左側(cè)A1:C10是一份學(xué)員名單表,現(xiàn)在需要根據(jù)F1單元格的“EH圖班”這個(gè)指定的條件,在F2:F10單元格區(qū)域中,提取該班級(jí)全部學(xué)員名單。

對(duì)Excel表中數(shù)據(jù)一對(duì)多查詢的方法

  今天說一個(gè)函數(shù)查詢方面的方法:Index+Small。

  F2單元格輸入以下數(shù)組公式,按住Ctrl+Shift鍵不放,再按回車鍵,然后向下填充:

  =INDEX(B:B,SMALL(IF(A$1:A$10=F$1,ROW($1:$10),4^8),ROW(A1))),"")

  公式講解

  IF(A$1:A$10=F$1,ROW($1:$10),4^8)

  這部分,先判斷A1:A10的值是否等于F1,如果相等,則返回A列班級(jí)相對(duì)應(yīng)的行號(hào),否則返回4^8,也就是65536,一般情況下,工作表到這個(gè)位置就沒有數(shù)據(jù)了。

  結(jié)果得到一個(gè)內(nèi)存數(shù)組:

  {65536;2;3;65536;65536;65536;65536;8;65536;10}

對(duì)Excel表中數(shù)據(jù)一對(duì)多查詢的方法

  SMALL函數(shù)對(duì)IF函數(shù)的結(jié)果進(jìn)行取數(shù),隨著公式的向下填充,依次提取第1、2、3……n個(gè)最小值,由此依次得到符合班級(jí)條件的行號(hào)。

  隨后使用INDEX函數(shù),以SMALL函數(shù)返回的行號(hào)作為索引值,在B列中提取出對(duì)應(yīng)的姓名結(jié)果。

  當(dāng)SMALL函數(shù)所得到的結(jié)果為65536時(shí),意味著符合條件的行號(hào)已經(jīng)被取之殆盡了,此時(shí)INDEX函數(shù)也隨之返回B65536單元格的引用,結(jié)果是一個(gè)無意義的0,為了避免這個(gè)問題,可以在公式后面加上一個(gè)小尾巴 &""

  利用&””的方法,很巧妙的規(guī)避了無意義0值的出現(xiàn),只是當(dāng)查找結(jié)果為數(shù)值或日期時(shí),這個(gè)方法會(huì)把數(shù)值轉(zhuǎn)變?yōu)槲谋局?,并不利于?shù)據(jù)的準(zhǔn)確呈現(xiàn)以及再次統(tǒng)計(jì)分析。

  練手題

  最后留下一道練手題,如下圖,根據(jù)A1:C10區(qū)域的數(shù)據(jù),將E列相關(guān)班級(jí)的姓名,填充到F2:I5區(qū)域。

對(duì)Excel表中數(shù)據(jù)一對(duì)多查詢的方法