2014年9月28日 星期日

Excel-在LOOKUP函數中使用雙條件查詢

有網友問到在 Excel 的資料表中有一個資料清單(參考下圖右),如何根據這個資料清單給予二個條件查表得到結果(參考下圖左)?

【備準工作】

選取儲存格E1:G18,按 Ctrl+Shift+F3 鍵,勾選「頂端列」,定義名稱:項目、勞點時數、勞點點數。

【輸入公式】

儲存格C2:=LOOKUP(1,1/((A2=項目)*(B2=勞點時數)),勞點點數)

(A2=項目)*(B2=勞點時數):條件一/判斷儲存格A2和項目陣列中的內容是否相符,傳回 TRUE/FALSE 的陣列;判斷儲存格B2和勞點時數陣列中的內容是否相符,傳回 TRUE/FALSE 的陣列。其中「*」,乃執行邏輯 AND 的運算,在運算過程中會將 TRUE/FALSE 陣列轉換為 1/0 陣列。

1/((A2=項目)*(B2=勞點時數)):當 1/1 時,傳回 1;當 1/0 時,傳回 #DIV/0! 訊息。最後得到含有一個「1」,其餘項目皆為「#DIV/0!」的陣列。

最後在 LOOKUP 函數中查詢上述陣列中「1」對應到勞點點數陣列中的內容,即為所求。

複製儲存格C2,貼至儲存格C2:C4。

沒有留言:

張貼留言

檢視其他文章

好康東東