日期的計算在平時的工作中是十分地常見的,應用的例子是非常地多。下面以某公司的員工的各種時間為例,計算各項與身份證号,入職日期,借款日期,年齡,賬齡分布以及個人的其他信息。
1
計算年齡,年齡分布
下表中是某員工入職時提供的身份證号,根據其提供的身份證号做以下面方面的提取。
(1)提取出生日期
在D2單元格中輸入公式:=TEXT(MID(C2,7,8),"0000-00-00"),然後按Enter鍵完成後向下下拉填充。
注:MID函數是截取某一個字符串中内容,這裡截取身份證号中出生日期部分;TEXT函數是使截取的部分的格式轉換成日期的格式。還有一種更加簡便的方法,使用DATE函數,DATE函數共有三個參數,即年,月,日。故公式可又可以寫成:=DATE(MID(C2,7,4),MID(C2,11,2),MID(C2,13,2))
(2)計算年齡
在E2單元格中輸入公式:=DATEDIF(D2,TODAY(),"y"),然後按Enter鍵完成後向下下拉填充。
注:DATEDIF函數是計算兩個日期之間的相隔的年數,月數,天數的函數,TODAY函數是返回當前的日期,“y”是DATEDIF的第三個屬性參數,表示返回兩個年份之間相隔的年數。
(3)計算年齡分布
按要求将年齡分為:18歲以下,18-29歲,30-49歲,40-49歲,50歲以上。按以上分布判斷年齡處于那個範圍之内。
在F2單元格中輸入公式:=VLOOKUP(E2,{0,"18歲以下";18,"18-29歲";30,"30-39歲";40,"40-49歲";50,"50歲以上"},2,1),然後按Enter鍵完成後向下下拉填充。
注:這裡使用VLOOKUP函數的模糊查找的屬性(即最後一個參數為1時)來确定來一個數字處于某一個範圍之内,也可以使用LOOKUP函數。與使用IF函數的相比,其優點就是精簡,邏輯關系清晰。
2
計算性别
下表中是某員工入職時提供的身份證号,根據其提供的身份證号判斷該員工的性别。
在D2單元格中輸入公式:=IF(MOD(MID(C2,17,1),2),"男","女"),然後按Enter鍵完成後向下下拉填充。
注:身份證号的第17位表示判斷性别的數字,如果是奇數,則為男,偶數為女。上面的公式使用MID函數先截取第17位的數據,然後與MOD取餘函數求取餘數,再使用IF函數進行判斷。另外也可以使用ISODD判斷是否為奇數的函數進行判斷,公式為=IF(ISODD(MID(C2,17,1)),"男","女")。
3
計算司齡、賬齡
下表中是某員工的入職時間與在公司預借款項的時間,計算其司齡與賬齡。
在D2單元格中輸入公式:
=DATEDIF(C2,TODAY(),"y")&"年"&DATEDIF(C2,TODAY(),"ym")&"個月"&DATEDIF(C2,TODAY(),"md")&"天",然後按Enter鍵完成後向下下拉填充。
注:DATEDIF函數是返回兩個日期之間相隔的時間。“YM”參數是表示忽略相隔的年數,返回月份數;“MD”是忽略兩個日期之間的年數與月份數,返回天數。如果隻是以粗略地月計算的話,公式可以寫成:
=DATEDIF(C2,TODAY(),"m")/12,但是這樣不能精确到天。
同樣地賬齡也可以這樣進行計算,同工齡的計算方法是一樣的,如果是進行分布,可以參照上面的年齡的分布的方法做。
4
計算生肖、星座
下表中是某員工的身份證号,從身份證中提取生肖。
在D2單元格中輸入公式:
=MID("猴雞狗 豬鼠牛虎免龍蛇馬羊",MOD(MID(C2,7,4),12) 1,1),然後按Enter鍵完成後向下下拉填充。
注:先使用MID函數函數從身份證中提取出出生年份,然後與MOD函數進行取餘,根據規則計算出生肖。這裡根據公曆生日計算,如果是陰曆生日,則有一定的偏差。
在E2單元格中輸入公式:
=LOOKUP(--MID(C2,11,4),{101,"摩羯";120,"水瓶";219,"雙魚";321,"白羊";420,"金牛";521,"雙子";621,"巨蟹";723,"獅子";823,"處女";923,"天秤";1023,"天蠍";1122,"射手";1222,"摩羯"})&"座",然後按Enter鍵完成後向下下拉填充。
注:根據日期格式的不同也靈活地改變第一個參數。“--”表示将文本強制地轉化為數值。
5
身份證号歸屬地查詢
查詢下面的身體證号的歸屬地。
注:身份證号的前六位表示省市省的相關地區信息,如果有興趣的小夥伴可以在正規的網站上下載相關信息去查詢。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!