在 Excel 中,如果想要在一個資料表中,依指定月份查詢清單,該如何處理?

1. 使用公式運算

Excel-依月份查詢資料清單(INDEX,ROW,INDIRECT,INDIRECT)

選取儲存格A1:E42,按 Ctrl+Shift+F3 鍵,勾選「頂端列」,定義名稱:序號、日期、姓名、部門、職務。

儲存格H2:{=IFERROR(INDEX(INDIRECT(H$1),SMALL(IF(MONTH(日期)=$G$2,
ROW(日期),""),ROW(1:1))-1),"")}

這是陣列公式,輸入完成要按 Ctrl+Shift+Enter 鍵,Excel 會自動加上「{}」。

複製儲存格H1,貼至儲存格H1:J18。

(1) IF(MONTH(日期)=$G$2,ROW(日期),"")

在陣列公式中,以MONTH(日期)得到每個日期中的「月份」,判斷是否和儲存格G2的內容相同,如果成立,則傳回該儲存格的列號,否則,傳回空字串("")。

(2) SMALL(第(1)式,ROW(1:1))

根據第(1)式的傳回值,以 SMALL 函數由小至大依序取得列號。

(3) INDEX(INDIRECT(H$1),第(2)式-1)

INDIRECT(H$1):可以將儲存格H1的內容對應已定義的名稱,即可取得該名稱所對應的儲存格範圍。

在 INDEX 函數中,將第(2)式傳回的列號,在第(3)式傳回的列號,取得對應的日期。

(4) IFERROR(第(3)式,"")

利用 IFERROR 將第(3)式所傳回的錯誤訊息以空字串顯示。

 

2. 使用進階篩選

Excel-依月份查詢資料清單(INDEX,ROW,INDIRECT,INDIRECT)

如果要以進階篩選取得結果,則先設定篩選條件:

儲存格G2:=MONTH(B2)=9

「月份」欄位不可以使用「日期」。

image

在進階篩選的對話框中設定:(將篩選結果複製到其他地方)

(1) 資料範圍:$A$1:$E$42

(2) 準則範圍:$G$1:$G$2

(3) 複製到:$G$4:$I$4

image

 

【延伸閱讀-FILTER函數篩選應用】

Excel-下拉式清單選取月份列出該月日期

圖片1 Excel-根據單條件和雙條件篩選資料(FILTER)

圖片1 Excel-列出指定星期幾的日期

圖片1 Excel-單一欄位篩選與跨欄位篩選

圖片1 Excel-計算分組最大值

圖片1 Excel-FILTER和OFFSET的動態陣列

圖片1 Excel-篩選資料並轉置資料

圖片1 Excel-2021版新增函數進行篩選、查詢、排序之綜合練習

圖片1 Excel-由資料清單中篩選一組

圖片1 Excel-利用FILTER函數模糊篩選

圖片1 Excel-從日期清單中區別平日和假日計算總和

圖片1 Excel-列出非空白項目的清單(比較篩選函數和以陣列公式模擬篩選)

圖片1 Excel-使用傳統陣列和動態陣列公式列出模糊搜尋清單

圖片1 Excel-FILTER函數與進階篩選

圖片1 Excel-2021版新增函數的使用

 

學不完.教不停.用不盡文章列表

arrow
arrow
    文章標籤
    Excel INDEX ROW INDIRECT
    全站熱搜

    vincent 發表在 痞客邦 留言(0) 人氣()