1. 程式人生 > >Excel:6種多條件查詢方法

Excel:6種多條件查詢方法

如下圖所示,要求根據裝置分類和品牌來查詢相應的銷售數量。

1. 使用VLOOKUP+輔助列進行多條件查詢

本例採用的方法是在原表的最前面加一輔助列,輔助列的公式為:=B2&C2

然後再採用VLOOKUP進行如下查詢:=VLOOKUP(F2&G2,A:D,4,0)

這裡所採用的方法其實就是把多條件進行合併,將其轉換為單條件查詢。

2. VLOOKUP函式的陣列多條件查詢

本例使用了陣列公式:=VLOOKUP(E2&F2,IF({1,0},A2:A7&B2:B7,C2:C7),2,0)

公式中的IF({1,0},A2:A7&B2:B7,C2:C7)是一個數組公式,它的返回值為:{"電腦ThinkPad",1760;"手機華為",2938;"iPad蘋果",1731;"電腦蘋果",1460;"手機三星",2039;"手機VIVO",1629},這其實也是把多條件通過記憶體數組合併為一個條件來進行查詢。

3. 使用SUM進行多條件查詢

SUM是求和公式,但在本例中用它來進行查詢。

這是一個數組公式:=SUM((A2:A7=E2)*(B2:B7=F2)*C2:C7),按CTRL + SHIFT +ENTER完成輸入。

這裡是使用了陣列公式的相乘功能來變相實現查詢功能。陣列公式中的(A2:A7=E2)*(B2:B7=F2)*C2:C7返回值為:

{1;0;0;1;0;0}*{1;0;0;0;0;0}*{1760;2938;1731;1460;2039;1629},它們的返回值是1760。

4. 使用SUMPRODUCT進行多條件查詢

SUMPRODUCT返回陣列乘積之和,所用公式如下所示:

=SUMPRODUCT((A2:A7=E2)*(B2:B7=F2)*C2:C7)

,它的實現原理和上面的SUM函式類似。

5. LOOKUP的多條件查詢

LOOKUP的萬金油查詢公式完全可以實現多條件查詢:=LOOKUP(1,0/((A2:A7=E2)*(B2:B7=F2)),C2:C7)

6. VLOOKUP和CHOOSE函式組合

VLOOKUP和CHOOSE函式組合為陣列公式進行查詢:=VLOOKUP(E2&F2,CHOOSE(TRANSPOSE(ROW(1:2)),A2:A7&B2:B7,C2:C7),2,0)

輸入CTRL + SHIFT + ENTER完成輸入。

TRANSPOSE形成一個"1行2列"的記憶體轉置陣列,裡面的內容是:

{"電腦ThinkPad",1760;"手機華為",2938;"iPad蘋果",1731;"電腦蘋果",1460;"手機三星",2039;"手機VIVO",1629}

這也相當於變相將多條件轉換為單條件,從而實現查詢效果。

綜上幾種方法,大都是利用函式轉換的方法,將多條件查詢轉為單條件,從而實現查詢功能。