Excel函數學習44:DATE函數

DATE函數返回一個數字,代表Excel中的表示日期的序列號。

Excel函數學習44:DATE函數

圖1

什麼情況下使用DATE函數?

DATE函數返回日期序列號。如果需要將三個單獨的值合併為一個日期,則使用DATE函數。它能夠:

  • 根據給定的年月日組合成日期

  • 將文本字符串或數字轉換成日期

  • 總是獲取一月中最後一天的日期

  • 獲取指定月數之後的日期

  • 計算今年慶祝生日的日期

DATE函數語法

DATE函數有3個參數,其語法如下:

  • DATE(year,month,day)

  • year:必需,指定一個代表年的數字。如果year介於0至1899之間,則Excel會將該值與1900相加來計算年份;如果year介於1900至9999之間,則Excel將使用該值作為年份;如果year小於0或大於等於10000,則Excel返回錯誤值#NUM!。

  • month:必需,一個正整數或負整數,表示一年中從1月至12月的各月。如果month大於12,則會從指定年份的第一個月開始加上該月份數;如果month小於1,則會從指定年份的第一個月開始減去該月份數,然後再加上1個月。

  • day:必需,一個正整數或負整數,表示一月中從1日至31日的各天。如果day大於指定月中的天數,則會從該月的第一天開始加上該天數;如果day小於1,則會從指定月份的第一天開始減去該天數,然後再加上1天。

DATE函數陷阱

Excel將根據計算機正在使用的日期系統來解釋參數year,默認情況下Windows使用的是1900日期系統,表示第一個日期為1900年1月1日。

在對參數year設置值時,應使用四位數字,以避免混淆。

因為Excel將日期存儲為連續序列號,因此需要設置單元格格式以顯示正確的日期形式。

示例1: 根據給定的年月日組合成日期

如下圖2所示,根據單元格A2、B2、C2給出的年月日組合成日期:

=DATE(A2,B2,C2)

Excel函數學習44:DATE函數

圖2

示例2:將文本字符串或數字轉換成日期

如圖3所示,單元格B3中包含有以下格式的日期:YYYYMMDD,被設置成文本格式。要將其轉換成日期,使用公式:

=DATE(LEFT(B3,4),MID(B3,5,2),RIGHT(B3,2))

因為格式固定,所以配合LEFT函數、MID函數、RIGHT函數提取相應的數字作為DATE函數的參數,從而組合成日期。

Excel函數學習44:DATE函數

圖3

示例3:總是獲取一月中最後一天的日期

一年有12個月,大月的天數是31天,小月是30天,2月比較特殊,平年28天,閏年29天。如果要獲取某月最後一天的日期,如圖4所示,獲取2018年2月最後一天的日期,可使用公式:

=DATE(B3,C3+1,0)

Excel函數學習44:DATE函數

圖4

上面的公式利用了這樣的一個道理:任何月份的最後一天都是下個月第一天前的那天,而1之前的整數為0,因此將DATE函數的參數day設置為0,就可以得到上月的最後一天。

如圖5所示,當修改單元格B3和單元格C3中的數字時,單元格C5和C6中的數據會自動更新。

Excel函數學習44:DATE函數

圖5

示例4:獲取指定月數之後的日期

有時候,要基於指定日期獲取經過幾個月之後的日期。如圖6所示,從2018年1月31日起經過3個月後的日期,使用公式:

=DATE(YEAR(D3),MONTH(D3)+E3,DAY(D3))

Excel函數學習44:DATE函數

圖6

示例5:計算今年慶祝生日的日期

結合NOW函數,計算當年慶祝生日的日期。如圖7所示,在單元格B3中是出生日期,單元格B6中計算今年慶祝生日的日期,公式為:

=DATE(YEAR(NOW()),MONTH(B3),DAY(B3))

Excel函數學習44:DATE函數

圖7


分享到:


相關文章: