網友問到 Excel 的問題:在一個含有類別和數值的清單中(如下圖),如何列出各個類別中最後一個數值?
在下圖中共有「甲、乙、丙、丁、戊、己」共六個類別,如何找出對應類別的最後一個?
【公式設計與解析】
選取儲存格A1:B26,按 Ctrl+Shift+F3 鍵,勾選「頂端列」,定義名稱:類別、數值。
儲存格E2:{=OFFSET($B$1,MAX(IF((類別=D2),ROW(類別),FALSE))-1,0)}
這是陣列公式,輸入完成要按 Ctrl+Shift+Enter 鍵,Excel 會自動加上「{}」。
(1) IF((類別=D2),ROW(類別),FALSE)
在類別陣列中找到和儲存格D2相同者,傳回其列號(ROW函數用以顯示儲存格列號),否則傳回 FALSE。
(2) MAX(IF((類別=D2),ROW(類別),FALSE))
根據公式(1),傳回列號的最大值(MAX函數),即為各類別的最後一個。
(3) OFFSET($B$1,MAX(IF((類別=D2),ROW(類別),FALSE))-1,0)
將第(2)式傳回的列號,帶入 OFFSET 函數取得對應的儲存格位址內容。
如果你的每個類別資料不是連續排列,原先的公式仍是適用的。
文章標籤
全站熱搜
留言列表