2012年12月25日 星期二

Excel-在一堆資料中找出幾個符合的項目

在 Excel 中常見到在一堆資料中要找出數個符合的項目,參考下圖。將檢核結果符合者,給予「V」記號,該如何處理?

 

為了讓學生多多練習,提供四種方式來操作,複製儲存格B2,往下各列貼上:

(1) 儲存格B2:=IF(ISNA(VLOOKUP(A2,$D$2:$D$9,1,FALSE)),"","V")

VLOOKUP(A2,$D$2:$D$9,1,FALSE):查詢儲存格A2的內容是否為符合的項目,若不是會得到一個錯誤訊息「#N/A」。

再透過 ISNA 函數,得到一個 True/False 結果。如果為 True,則輸出空白,否則輸出「V」。

 

(2) 儲存格B2:=IF(ISNA(MATCH(A2,$D$2:$D$9,0)),"","V")

MATCH(A2,$D$2:$D$9,0):查詢儲存格A2的內容在項目資料中的第幾列,若不在項目中則得到一個錯誤訊息「#N/A」。

再透過 ISNA 函數,得到一個 True/False 結果。如果為 True,則輸出空白,否則輸出「V」。

 

(3) 儲存格B2:=IF(SUMPRODUCT(--(A2=$D$2:$D$9)),"V","")

(A2=$D$2:$D$9):比對儲存格A2的內容在項目資料中是否有相符的 True/Fasle 陣列。「--」運算可以將 True/Fasle 陣列轉換為 1/0 陣列。如果結果為「1」,表示有相符的項目,結果為「0」,表示沒有相符的項目。

IF 函數中的條件判斷式,1 和 True 同義、0 和 False 同義,如果絛件為 True,則輸出空白,否則輸出「V」。

 

(4) 儲存格B2:{=IF(OR(A2=$D$2:$D$9),"V","")}

這是陣列公式,輸入完成要按 Ctrl+Shift+Enter 鍵。

(A2=$D$2:$D$9):比對儲存格A2的內容在項目資料中是否有相符的 True/Fasle 陣列。OR 函數的參數中,只要有一個為 True,則結果為 True,否則為 False

IF 函數中的條件判斷式,1 和 True 同義、0 和 False 同義,如果絛件為 True,則輸出空白,否則輸出「V」。

沒有留言:

張貼留言

好康東東