函數功能
EOMONTH函數用于返回某個月份最後一天的序列号,該月份與start_date相隔(之前或之後)指示的月份數。它可以計算正好在特定月份中的到期日。
函數語法
EOMONTH(start_date, months)
參數解釋
start_date:表示一個代表開始日期的日期。應使用DATE函數輸入日期,或者将日期作為其他公式或函數的結果輸入。
months:表示start_date之前或之後的月份數。months為正值将生成未來日期,為負值将生成過去日期。如果months不是整數,将截尾取整。
實例1 統計月份對應的月末日期
在實際應用中,有時候需要得到指定月份的月末日期,這裡直接使用EOMONTH函數即可輕松實現。
➊ 選中B2單元格,在公式編輯欄中輸入公式:
=EOMONTH(A2,0)
按“Enter”鍵即可得到第一條月份記錄所對應的月末日期,這裡顯示的是日期序列,選擇“開始”→“數字”→“短日期”格式即可完成轉換。
➋ 将光标移到B2單元格的右下角,光标變成十字形狀後,按住鼠标左鍵向下拖動進行公式填充,即可返回其他月份對應的月末日期,如圖1所示。
圖1
公式解析
=EOMONTH(A2,0)
起始日期為A2單元格中的日期值,将其月份數設置為正值以便生成未來日期,并返回其月份最後一天的序列号。
實例2 統計離職員工的工資結算日期
公司在每月的月初發放員工薪水,根據員工的離職日期可以計算出其發薪日。
➊ 選中C2單元格,在公式編輯欄中輸入公式:
=TEXT(EOMONTH(B2,0) 1,"yyyy年m月d日")
按“Enter”鍵即可得出第一位離職人員的工資結算日期。
➋ 将光标移到C2單元格的右下角,光标變成十字形狀後,按住鼠标左鍵向下拖動進行公式填充,即可返回其他離職人員的工資結算日期,如圖2所示。
圖2
公式解析
①以0作為EOMONTH函數的參數,表示産生B2單元格中的月份所對應的最後一天的日期,然後加上數值1表示次月1日的序列值。
②使用TEXT函數将步驟①得到的序列值格式轉換為日期格式,顯示出年月日。
實例3 在考勤表中返回各月的天數
根據當前月份自動統計本月的日期天數在報表的制作中非常實用。
例如在考勤記錄表中,需要按日來對員工出勤情況進行記錄,但不同月份的實際天數卻不一定相同(如2013年的8月份有31天,而9月份有30天)。
➊ 選中A4單元格,在公式編輯欄中輸入公式:
=IF(ROW(A1)<=DAY(EOMONTH($B$1,0)),DAY(DATE(YEAR($B$1),MONTH($B$1),ROW(A1))),"")
按“Enter”鍵即可根據A1單元格中的當前日期返回其對應的日期,将光标移到A4單元格的右下角,光标變成十字形狀後,按住鼠标左鍵向下拖動進行公式填充,即可返回當月的其他日期,如圖3所示。
圖3
➋ 當更改A1單元格中的當前日期時,可以看到日期會自動根據當月的實際情況發生相應的變化,如圖4所示。
圖4
公式解析
①返回B1單元格中給定日期所在月份的最後一天的日期。
②提取步驟①中返回日期的天數。
③ 如果ROW(A1)小于等于步驟②的返回值,則進入步驟④以後的運算,否則返回空值。
④ 提取B1單元格中給定日期的年份、月份并與ROW(A1)組成一個日期值。
⑤ 從步驟④返回的日期值中提取天數。
實例4 在考勤表中返回對應的星期數
在考勤表中除了可以根據當前月份自動返回各日期,同時還可以返回各日期對應的星期數,此時可以配合使用如下多個函數來達成。
➊ 選中B4單元格,在公式編輯欄中輸入公式:
=IF(ROW(A1)<=DAY(EOMONTH($B$1,0)),WEEKDAY(DATE(YEAR($B$1),MONTH($B$1),A4),按“Enter”鍵即可根據A1單元格中的當前日期返回其對應的星期數,将光标移到A4單元格的右下角,光标變成十字形狀後,按住鼠标左鍵向下拖動進行公式填充,即可返回其他日期對應的星期數,如圖5所示。
圖5
➋ 當更改A1單元格中的當前日期時,可以看到星期數會自動根據當月的實際情況發生相應的變化,如圖6所示。
圖6
公式解析
本公式的解析可以參照上一技巧,隻是在步驟⑤中将DAY函數換成了WEEKDAY函數,因此可以返回各日期所對應的星期數。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!