網友提問:如何依下圖的左表以查表方式列出如下圖的右表?
【公式設計與解析】
儲存格J2:{=IFERROR(INDEX($B$1:$B$20,SMALL(IF(D$2:D$20="留位",
ROW(D$2:D$20),""),ROW(1:1))),"")}
這是陣列公式,輸入完成要按 Ctrl+Shift+Enter 鍵,Excel 會自動加上「{}」。
複製儲存格J2,貼至儲存格J2:N20。
(1) IF(D$2:D$20="留位",ROW(D$2:D$20),"")
在陣列公式中,假設儲存格D2:D20的內容為「留位」,則傳回對應列號的陣列。
ROW 函數會傳回指定儲存格的列號,ROW(A1)=1、ROW(B2)=2。
(2) SMALL(第(1)式,ROW(1:1))
利用 SMALL 函數在第(1)式傳回的列號陣列中,由小至大依序找出對應數值。
(3) INDEX($B$1:$B$20,第(2)式)
將第(2)式傳回的數值,代入 INDEX 函數以查表方式在儲存格B1:B20,找到對應的儲存格內容。
(4) IFERROR(第(3)式,"")
如果第(3)式傳回錯誤訊息時,以空字串("")取代。
文章標籤
全站熱搜
留言列表