如何使用excel計算工齡

2022-02-06 01:08:46 字數 1290 閱讀 9655

今天一位搞財務的mm問我excel計算工齡的問題,我想了想,還真不會啊。搞測試的,寫case,報進度,統計bug一般都是用excel,還真沒弄過計算工齡日期生日之類的。

她的要求是:

居然不會,想了半天想到2個方案:1、用perl寫個指令碼給她;2、把資訊匯入資料庫,用select 語句查詢再把結果匯出;

後來仔細想想,這種不符合她的要求,人家要去用excel解決。於是,我就開始查詢excel function,關於日期處理的。

在一般的程式語言與資料庫中,都有取得當前日期與字串處理的函式,於是我就按照這個思路查詢。(她沒要求計算出3.5年工齡這樣的,只要求給出整年整月的)

excel取得當前日期的函式是:

today() 取得系統日期  顯示:

1/2/2013

now() 取得系統日期和當前時間

1/2/2013 12:13

因為不需要系統時間,所以就選today()

時間處理函式:datedif(start_date,end_date,unit)

datedif函式的start_date和end_date引數就是起止日期,而unit則是使用者希望datedif函式返回的數值是以什麼為單位的。unit單位有六種,

分別是: "y":整年 "m":整月 "d":整天 "ym":不到一年的月數 "yd":不到一年的天數 "md":不到乙個月的天數 需要注意的是

注意:1.datedif函式輸入unit引數時一定要加上雙引號。2.start_date

例子:datedif("2001-09-01","2013-01-01","y")  11

datedif("2001-09-01","2013-01-01","ym") 4

datedif("2001-09-01","2013-01-01","md")  0

datedif("2001-09-01","2013-01-01","yd")  122

剩下的就easy了,需要用到是

excel連線符&

取得 datedif(a2,b2,"y")&"-"&datedif(a2,b2,"ym")&"-"&datedif(a2,b2,"md") 整年 整月 整日 的工

額外思考:

如果是身份證號提取出生日期呢?

首先判斷身份證號是不是18位,len(str)

=if(len(str)=18,true,false)

擷取出生年mid(a2,7,4) 從a2單元格第七位算起,擷取4個(7、8、9、10)

如何使用excel計算工齡

今天一位搞財務的mm問我excel計算工齡的問題,我想了想,還真不會啊。搞測試的,寫case,報進度,統計bug一般都是用excel,還真沒弄過計算工齡日期生日之類的。她的要求是 居然不會,想了半天想到2個方案 1 用perl寫個指令碼給她 2 把資訊匯入資料庫,用select 語句查詢再把結果匯出...

Excel計算年齡(工齡)方法一則

剛才在excel小組有人問excel問如何計算年齡 工齡 的問題,其實方法特別多,這裡就說乙個方法使用yearfrac和int函式來計算。語法 yearfrac start date,end date,basis 要點應使用 date 函式輸入日期,或者將函式作為其他公式或函式的結果輸入。例如,使用...

工齡計算方案

根據需求不同,一般工齡計算會有兩種方案,一種是直接以天數表示,一種是以年月日的格式表示。兩種情況的計算的方式不同,所以整理記錄一下。1 以天數的表示方式 思路 直接用兩個日期相減,得到天數即可 1 from datetime import datetime23 4def cal working ag...