在 Excel 的工作表中,如果你想要找出一年中有幾個13號星期五,該如何處理?以本例來練習『陣列公式』。

Excel-計算一年中13號星期五的數量(WEEKDAY,ROW,陣列公式)

 

【公式設計與解析】

儲存格B2:{=SUM(1*(WEEKDAY(DATE(A2,ROW($1:$12),13),2)=5))}

公式輸入完成,要按 Ctrl+Shift+Enter 鍵,Excel 會自動產生「{}」。

ROW($1:$12):在陣列公式中產生:1, 2, 3, ..., 11, 12。

DATE(A2,ROW($1:$12),13):在陣列公式中產生各年度的 1/13 ~ 12/13。

WEEKDAY(DATE(A2,ROW($1:$12),13),2)=5:判斷各年度的 1/13 ~ 12/13 是否為為星期五,傳回 TRUE/FALSE 陣列。

Excel-計算一年中13號星期五的數量(WEEKDAY,ROW,陣列公式)

1*(WEEKDAY(DATE(A2,ROW($1:$12),13),2)=5):將上式傳回的 TRUE/FALSE 陣列,轉換為 1/0 陣列。

最後透過 SUM 函數將上式加總,即為所求。

 

【補充說明】

利用『評估值公式』,可以觀察到陣列公式:

(1) 產生各年度每月的13日

Excel-計算一年中13號星期五的數量(WEEKDAY,ROW,陣列公式)

(2)找出各年度每月的13日是否為星期五

Excel-計算一年中13號星期五的數量(WEEKDAY,ROW,陣列公式)

(3) 將0和1加總即為所求

Excel-計算一年中13號星期五的數量(WEEKDAY,ROW,陣列公式)

【參考資料】

 FILTER 函數參考微軟提供的說明網頁:

 

    全站熱搜

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