PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
Office
[算表] 年資加總少一天?
作者:
MagusLuLu
(海邊漂來的某L)
2017-08-24 17:38:09
軟體:Excel 2013
版本:檔案為97-2003.xls格式
正在處理年資問題,但EXCEL計算結果對不起來,上板求教~
A到職日(有上班): 88/02/11
B留停起(未上班): 94/10/01
C復職日(有上班): 97/05/01
D結算日(有上班):106/10/31
我的算法如下:
全年資:D-A+1=18年8個月21天
年月算法DATEDIF(A,D+1,"Y/YM")
日算法D+1-DATE(YEAR(A)+18年,MONTH(A)+8月,DAY(A))
留停前:B-A = 6年7個月20天
年月算法DATEDIF(A,B,"Y/YM")
日算法B-DATE(YEAR(A)+6年,MONTH(A)+7月,DAY(A))
留停期:C-B = 2年7個月 0天
年月算法DATEDIF(B,C,"Y/YM")
日算法C-DATE(YEAR(B)+2年,MONTH(B)+7月,DAY(B))
復職後:D-C+1= 9年6個月 0天
年月算法DATEDIF(C,D+1,"Y/YM")
日算法D+1-DATE(YEAR(C)+9年,MONTH(C)+6月,DAY(C))
(日算法是為了避開DATEDIF(起,訖,"MD")的bug)
理論上(全年資-留停期)=(留停前+復職後),或(全年資)=(留停前+留停期+復職後);
但從EXCEL計算結果怎麼算全年資都比(留停前+留停期+復職後)多1天……
請問我的算法是哪裡出了問題呢?
作者: soyoso (我是耀宗)
2017-08-24 18:13:00
覺得是畸零大小月的問題,d為10/31,年資的日則是10/11~10/31為21天,而B留停日5/1未上班,算到4/30,日則為4/11~4/30為20天,d於大月(31天)時會產生1日落差,如於小月(30)時則會相同,如d為9/30時
https://i.imgur.com/aehbjE0
測試上則為相同如將b留停改為11/1算到10/31,a,c,d同原文資料,測試應會相同
https://i.imgur.com/ayYLoa3
作者:
qpowjohn
(pose)
2017-08-25 16:50:00
是閏年問題?
繼續閱讀
[算表] 圖表坐標軸 10的負數次方
kipi91718
[算表] 下拉式方塊的事件
skating
[算表] 相同人名多品項合併
sckkane
[問題] VBA取用跨工作簿的儲存格範圍
aovo
[問題] EXCEL 重複資料顯示問題
KEI1130
[問題] 有遇到類似的編寫情境嗎?
thomasflee
[算表] 特定資料相加
partDu
[問題] pdf檔無法支援"螢光標示文字"的功能
zzss2003
Re: [算表] 如何改變 $ 後的值
LeonYo
[問題] VBA計算文字字串
rj5871224
Links
booklink
Contact Us: admin [ a t ] ucptt.com