回覆列表
  • 1 # 年輪978865

    一、Excel vlookup函式的多條件操作例項

    (一)例項1:條件用 IF{1,0}

    1、假如要從服裝銷量表中找出價格為85元的服裝名稱。在 A12 單元格中輸入要查詢的價格,例如 85,把公式 =VLOOKUP(A12,IF({1,0},C2:C9,B2:B9),2,0) 複製到 B12 單元格,按回車,則返回“粉紅短袖襯衫”,這件襯衫的價格恰好是 85 元,說明結果正確;操作過程步驟,如圖1所示:

    圖1

    提示:若表格中有多件85元的服裝,則vlookup函式只返回第一件符合條件的服裝。

    2、公式簡析(詳細剖析見下文)

    公式中查詢區域為 IF 陣列條件,陣列由 1 和 0 組成,1 表示 True(真),0 表示 False(假);執行公式時,先從陣列中取 1,由於 1 為真,所以從 C2:C9 中返回一個值;然後再從陣列中取 0,由於 0 為假,所以從 B2:B9 中返回一個值;如此反覆,直到遍歷完 C2 到 C9 與 B2 到 B9。

    (二)例項2:條件用 IF{0,1}

    1、同樣要從服裝銷量表中找出價格為85元的服裝名稱。在 A13 單元格輸入 85,把公式 =VLOOKUP(A13,IF({0,1},B2:B9,C2:C9),2,0) 複製到 B13 單元格,按回車,則同樣返回“粉紅短袖襯衫”,與例項1的結果一樣,操作過程步驟,如圖2所示:

    圖2

    2、公式簡析

    公式與例項1相比,IF 的陣列條件與只是把 1 和 0 交換了次序,由 {1,0} 變為 {0,1};公式執行時,先從陣列中取出 0,由於 0 為假,所以從 C2 到 C9 中返回一個值;然後再從陣列中取 1,由於 1 為真,所以從 B2 到 B9 中返回一個值;如此反覆,直到遍歷完 B2 到 B9 與 C2 到 C9。從執行過程來看,取出值的順序與例項1完全一樣,因此返回同一個結果。

    (三)例項3:兩列連線查詢,條件用 IF{1,0}與用 & 連線查詢區域

    1、假如要從服裝銷量表中找出“小類”為“襯衫”、“價格”為85元的服裝名稱。在 A12 輸入“襯衫”,B12 輸入 85,把公式 =VLOOKUP(A12&B12,IF({1,0},D2:D9&E2:E9,B2:B9),2,0) 複製到 C12,按 Ctrl + Shift + 回車,則返回服裝名稱同樣為“粉紅短袖襯衫”,操作過程步驟,如圖3所示:

    2、公式說明:

    A12&B12 是要查詢的值,A12 與 B12 用連線符號 & 連線起來,結果為“襯衫85”;查詢區域的條件同樣用 {1,0} 陣列條件;公式執行時,先取 1,由於 1 為真,所以從 D2:D9&E2:E9 中返回一個連結值(例如 D2&E2);然後取 0,由於 0 是假,所以從 B2:B9 中取一個值取來;如此反覆,直到遍歷完 D2&E2 到 D9&E9 與 B2 到 B9。

    (四)例項4:兩列連線查詢,條件用 IF{0,1}與用 & 連線查詢區域

    1、同樣要從服裝銷量表中找出“小類”為“襯衫”、“價格”為85元的服裝名稱。在 A13 輸入“襯衫”,B13 輸入 85,如圖4所示:

    圖4

    2、把公式 =VLOOKUP(A13&B13,IF({0,1},B2:B9,D2:D9&E2:E9),2,0) 複製到 C13 單元格,如圖5所示:

    圖5

    3、按 Ctrl + Shift + 回車,同樣返回與例項3一樣的服裝“粉紅短袖襯衫”,如圖6所示:

    圖6

    4、公式說明:

    與例項3相比,例項4只是 IF 的陣列條件由 {1,0} 變為 {0,1},IF 條件的真假返回值相互調換,即 D2:D9&E2:E9 與 B2:B9 的位置相互調換。經此調換,公式執行所返回的值與例項3一樣,所以能查到與例項3一樣的結果。

    二、Excel vlookup函式與if{1,0}陣列組合剖析

    (一)例項1剖析

    公式為:=VLOOKUP(A12,IF({1,0},C2:C9,B2:B9),2,0)

    1、Excel 橫向陣列與縱向陣列的區別。橫向陣列是佔一行兩列,元素之間用“,”分隔,例如 {1,0} 為橫向陣列;縱向陣列佔一列兩行,元素之間用“;”分隔,例如 {1;0} 為縱向陣列。

    2、if 條件分解

    由於 {1,0} 為橫向陣列,C2:C9 與 B2:B9 之間共有八行,因此 IF 的三個引數要分為八組,即:

    引數1分解為:{1,0; 1,0; 1,0; 1,0; 1,0; 1,0; 1,0; 1,0;}

    引數2分解為:{C2,C2; C3,C3; C4,C4; C5,C5; C6,C6; C7,C7; C8,C8; C9,C9;}

    引數3分解為:{B2,B2; B3,B3; B4,B4; B5,B5; B6,B6; B7,B7; B8,B8; B9,B9; }

    3、公式執行時,if 條件組合

    A、第一次執行,分別從三個引數中取第一個元素(即從引數1中取 1,從引數2中取 C2,從引數3中取 B2),組成 IF(1,C2,B2),由於 1 為真,所以取 C2。

    B、第二次執行,分別從三個引數中取第二個元素,組成 IF(0,C2,B2),由於 0 為假,所以取 B2。

    C、第三次執行,分別從三個引數中取第三個元素,組成 IF(1,C3,B3),由於 1 為真,所以取 C3。

    D、以此類推,直到遍歷完 C2 到 C9 和 B2 到 B9。

    (二)例項2剖析

    公式為:=VLOOKUP(A13,IF({0,1},B2:B9,C2:C9),2,0)

    例項2 與例項1 只是陣列元素 1 和 0及真假條件調換了位置,剖析方法與例項1一樣。

    1、if 條件分解

    由於 {0,1} 同樣為橫向陣列,B2:B9 與 C2:C9 之間共有八行,因此 IF 的三個引數要分為八組,即:

    引數1分解為:{0,1; 0,1; 0,1; 0,1; 0,1; 0,1; 0,1; 0,1;}

    引數2分解為:{B2,B2; B3,B3; B4,B4; B5,B5; B6,B6; B7,B7; B8,B8; B9,B9; }

    引數3分解為:{C2,C2; C3,C3; C4,C4; C5,C5; C6,C6; C7,C7; C8,C8; C9,C9;}

    2、公式執行時,if 條件組合

    A、第一次執行,分別從三個引數中取第一個元素,組成 IF(0,B2,C2),由於 0 為假,所以取 C2。

    B、第二次執行,分別從三個引數中取第二個元素,組成 IF(1,B2,C2),由於 1 為真,所以取 B2。

    C、第三次執行,分別從三個引數中取第三個元素,組成 IF(0,B3,C3),由於 0 為假,所以取 C3。

    D、以此類推,直到遍歷完 B2 到 B9 和 C2 到 C9。從執行的結果來看,例項2與例項1每次執行返回的結果一樣。

    (三)例項3剖析

    公式為:=VLOOKUP(A12&B12,IF({1,0},D2:D9&E2:E9,B2:B9),2,0)

    例項3 與例項1 的原理是一樣的,只是例項3的查詢值和查詢範圍用連線符號 & 把兩列連線成一列,剖析方法與例項1也一樣。

    1、if 條件分解

    由於 {1,0} 為橫向陣列,D2&E2 到 D9&E9 與 B2 到 B9 之間共有八行,因此 IF 的三個引數要分為八組,即:

    引數1分解為:{1,0; 1,0; 1,0; 1,0; 1,0; 1,0; 1,0; 1,0;}

    引數2分解為:{D2&E2,D2&E2; D3&E3,D3&E3; D4&E4,D4&E4; D5&E5,D5&E5; D6&E6,D6&E6; D7&E7,D7&E7; D8&E8,D8&E8; D9&E9,D9&E9;}

    引數3分解為:{B2,B2; B3,B3; B4,B4; B5,B5; B6,B6; B7,B7; B8,B8; B9,B9; }

    2、公式執行時,if 條件組合

    A、第一次執行,分別從三個引數中取第一個元素,組成 IF(1,D2&E2,B2),由於 1 為真,所以取 D2&E2。

    B、第二次執行,分別從三個引數中取第二個元素,組成 IF(0,D2&E2,B2),由於 0 為假,所以取 B2。

    C、第三次執行,分別從三個引數中取第三個元素,組成 IF(1,D3&E3,B3),由於 1 為真,所以取 D3&E3。

    D、以此類推,直到遍歷完 D2&E2 到 D9&E9 與 B2 到 B9。

    例項4與例項2和例項3類似,剖析方法也相同,可以自己嘗試剖析以加深理解。

  • 中秋節和大豐收的關聯?
  • 富有詩意的詞語最好是很優美的?