網友問到的 Excel 問題:參考下圖,如何在人員打卡時間的清單中,找出各日期中最早打卡和最晚打卡的時間?

在下圖中,每個日期有甲、乙、丙、丁、戊等五個人打卡,根據這個打卡清單,如何找出每天打卡的最小值(最早時間)和最大值(最晚時間)?

Excel-在多個日期的時間清單中找出每日最早和最晚時間(MIN,MAX,陣列公式)

 

【公式設計與解析】

(1) 定義名稱

選取儲存格A1:C26,按 Ctrl+Shift+F3 鍵,勾選「頂端列」,定義名稱:日期、人員、打卡。

 

(2) 找出每日最早時間

{=MIN(IF((日期=E2),打卡,"X"))}

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

IF((日期=E2),打卡,"X"):在陣列公式中,若在日期陣列中的日期和儲存格E2相同,則傳回打卡對應的陣列內容;若不相同,則傳回「X」(這只一個任意的字元,只要不是數字即可)。

MIN(IF((日期=E2),打卡,"X")):在上式傳回的打卡陣列中,運用 MIN 函數取出陣列中的最小值。

 

(3) 找出每日最晚時間

{=MAX(IF((日期=E2),打卡,"X"))}

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

IF((日期=E2),打卡,"X"):在陣列公式中,若在日期陣列中的日期和儲存格E2相同,則傳回打卡對應的陣列內容;若不相同,則傳回「X」(這只一個任意的字元,只要不是數字即可)。

MAX(IF((日期=E2),打卡,"X")):在上式傳回的打卡陣列中,運用 MAX 函數取出陣列中的最大值。

arrow
arrow
    文章標籤
    Excel MIN MAX 陣列公式
    全站熱搜

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