close

    在這次前往農林航空測量所教授 Excel 2010 課程時學生提到針對到職日期來計算年資是其一直很困擾的問題,Excel 2003版本作業時,除了使用電腦計算外,為了怕錯誤並驗證年資計算結果的正確性,還必須人工作業計算一次,二者相符才算OK,因此提出是否有很簡便的函數可以幫助,使作業時間縮短。

        針對這樣的需求,我們必須介紹一個函數「DATEDIF」,這個函數是針對與 Lotus 1-2-3 的相容性而提供的,但是在日期的計算方面有其獨到的地方,可以節省使用者許多日期間運算的作業時間。

    下面我們就來介紹這個DATEDIF函數及其應用。

    語法:DATEDIF(開始_日期,結束_日期,單位) 

引數

描述

備註

開始_日期

代表期間的最初 (或開始) 日期。

無。

結束_日期

代表期間的最後 (或結束) 日期。

結束_日期引數必須是在開始_日期之後的日期。結束時期當天不算在最終結果中。

單位

您要傳回的資訊類型。

無。

  說明:

單位

傳回

"Y"

週期中完整的行事曆年份數。

"M"

週期中完整的已命名月份數。

"D"

週期中完整的已命名日期數。

"MD"

開始_日期結束_日期的天數。日期的月和年會被忽略。

"YM"

開始_日期的月份到結束_日期的月份的月數。日期的日和年會被忽略。

"YD"

開始_日期結束_日期的天數。日期的年會被忽略。

       注意:

       Excel 會將日期儲存為連續的序號,因此可用於計算。依預設,190011日序號是1,而 200811日是39448,因為39448這個序號是190011日之後的第39,448 天。

範例一 要依照系統日期自動計算年資

   如果雪珊是1992年1月2號進公司,我們要計算其到今天為止的年資是多少年時,我們可以依照下列步驟完成。

步驟1:在A1儲存格輸入「1992/1/2」字串。

步驟2:在B1儲存格輸入「=DATEDIF(A1,NOW(),"Y")」公式字串,這時會看到B1儲存格顯示運算結果「20」,表示其年資為20年。(由於目前系統日期是2012/12/28)

   這是一個非常簡便的作法,但有學生提到,老師若我的計算基準日期是一個指定的日期,可能是未來的日期或是己經過去的日期,這時又改如何計算呢?

   針對這點,我們可以將計算基準日期放在A2儲存格,例如:我們的計算基準日期為「2013/1/5」,其作法如下:

步驟1:在A2儲存格輸入「2013/1/5」字串。

步驟2:在B2儲存格輸入「=DATEDIF(A1,A2,"Y")」公式字串,這時會看到B2儲存格顯示運算結果「21」,表示其年資為21年。

   這樣的操作方式是非常具有效率的,當要計算的人數多達數千,甚至是以萬計筆數時,當計算基準日期有變動時,只要改動A2儲存格的內容,即可得到最新的計算結果。

   如果,一定要將日期放入到公式內,我們可以將公式更改為「=DATEDIF(A1,DATE(2013,1,5),"Y")

 

 語法:DATE(year,month,day)

 

   DATE 函數語法具有下列參數 (數是將資訊提供給動作、事件、方法、屬性、函數或程序的值。)

 

  • Year 是必要的參數,year 參數的值可以包含一到四位數。Excel 會依據我們電腦所使用的資料系統來解譯 year 參數。依預設,Microsoft Excel for Windows 是使用 1900 日期系統;Microsoft Excel for the Macintosh 則是使用 1904 日期系統。

 

    秘訣: 建議 year 參數值使用四位數,以防止不合需要的結果,例如,使用 "07" 會傳回 "1907" 做為年份值。

 

如果 year 是介於 0 (零) 與 1899 (包含) 之間,則 Excel 會將該值加上 1900 以計算年份。例如,DATE(108,1,2) 會傳回 January 2, 2008 (1900+108)。

如果 year 是介於 1900 與 9999 (包含) 之間,則 Excel 會使用該值來做為年份值。例如,DATE(2008,1,2) 會傳回 January 2, 2008。

如果 year小於 0 或者是大於 10000,則 Excel 會傳回 #NUM! 錯誤值。

 

  • Month 是必要的參數代表全年一月至十二月的正或負整數
    • 如果 month 大於 12,則 month 會將該月數加到指定年份的第一個月份上。例如 DATE(2010,15,2) 會傳回代表 2011 年 3 月 2 日的序列值。
    • 如果 month 小於 1,則 month 會從指定年份的第一個月份減去該月數加 1。例如 DATE(2012,-7,2) 會傳回代表 2011 年 5 月 2 日的序列值。
  • Day 是必要的參數,代表整個月 1 至 31 日的正或負整數。
    • 如果 day 大於指定月份的天數,則 day 會將天數加到該月份的第一天。例如,DATE(2009,1,35) 會傳回代表 2009 年 2 月 4 日的序列值。
    • 如果 day 小於 1,則 day 會從指定月份第一天減去該天數加 1。例如 DATE(2013,1,-15) 會傳回代表 2012 年 12 月 16 日的序列值。

 

相關主題:

DATEDIF

055年資(齡)計算

338DATEDIF函數的語法及實際應用案例

226使用Excel函數計算年齡(年資)的三種方法

379職場人士(台幹),這些Excel函數公式你都要會

399用DATEDIF函數輕鬆搞定各類到期提醒及工齡計算

515DATEDIF函數的使用方法

 

  


arrow
arrow
    創作者介紹

    錦子老師 發表在 痞客邦 留言(0) 人氣()