表格中查詢符合多個條件的資料(Excel怎樣利用函式查詢對應多個條件的值)

Excel應用中,經常會遇到多條件查詢,就是要查詢的條件不僅僅只有一個,而是有多個條件。你會怎麼做?今天我們就來挖一挖都有哪些方法。

如下圖所示,是一份某專案比賽獲獎名單。現要查詢專業是外語系,且獲一等獎的獲獎人員姓名。這裡查詢獲獎人員的判斷條件是專業和獲獎類別,兩者同時為真時,查詢出對應的結果。這就是我們今天要說的多條件查詢。

方法一:插入輔助列,利用vlookup函式進行查詢

本方法是:

1、 先在原表的最前面插入輔助列,輔助列的內容為專業和獲獎類別兩列內容的合併。合併內容直接利用公式完成,即在輔助列A3單元格輸入公式:=B3&C3,然後公式向下填充。

2、 然後再使用vlookup函式進行查詢。

即在H3單元格里輸入以下公式:

=VLOOKUP(F3&G3,A:D,4,0)

查詢結果就出來了。

方法二:vlookup函式結合陣列公式進行查詢

即在H3單元格里輸入以下公式:

=VLOOKUP(E3&F3,IF({1,0},A3:A11&B3:B11,C3:C11),2,0)

然後按Ctrl Shift 回車鍵。

公式說明:

上述公式時有一個陣列公式,=iF({1,0},A3:A11&B3:B11,C3:C11)。

先說下if函式的語法:

if(條件,條件為真的返回值,條件為假的返回值)。

則上述公式裡的陣列公式:

=iF({1,0},A3:A11&B3:B11,C3:C11)

可以理解為:

=if(1, A3:A11&B3:B11, C3:C11),返回A3:A11&B3:B11;

=if(0, A3:A11&B3:B11,C3:C11),返回C3:C11。

所以,當if函式第一引數為陣列時,會分別進行計算。即先用1作為引數判斷,返回結果A3:A11&B3:B11;再用0作為引數判斷,又返回一個結果C3:C11。然後兩個結果重新組合一個陣列:A3:A11&B3:B11在第一列,C3:C11在第二列。

說到這裡公式=iF({1,0},A3:A11&B3:B11,C3:C11)返回的結果就很明顯了吧。

它的返回值為:

{“計算機系一等獎”,”小高”;”計算機系二等獎”,”小王”; ”計算機系三等獎”,”小方”; “外語系一等獎”,”小張”;”外語系二等獎”,”小鄭”; ”外語系三等獎”,”小黃”; “數學系一等獎”,”小謝”;” 數學系系二等獎”,”小周”; ” 數學系三等獎”,”小蔡”;}。

此方法就是把多條件通過記憶體陣列合併為一個條件來進行查詢。

方法三 使用index函式和match函式相結合

即在H3單元格里輸入以下公式:

=INDEX(C3:C11,MATCH(E3&F3,A3:A11&B3:B11,0))

然後按Ctrl Shift 回車鍵。

本方法中,在match函式裡面,先用連線符&,把兩個條件連線起來,變成一個條件,用match函式返回指定數值E3&F3在指定陣列區域A3:A11&B3:B11中的位置;然後再用index函式返回該位置在指定區域C3:C11的值。

多條件查詢的方法先分享這三種方法,還有其它方法,大家可以自己在去研究研究哦。