EXCEL 能否实现月份之差(以"月"为单位,多出的"天数"为小数部份)

我想做一个“工资结算表”
如:张三,入司日期为:2009年1月1日,辞职日期为:2009年4月15日;月工资为3000元;
出勤日期为:4个月15天,实发工资为:3000元/月×4.5(以月为单位,多出15天刚好0.5个月) = 13500元

请问:EXCEL中能否实现自动计算“月份之差”?以"月"为单位,多出的"天数"为小数部份(取两位小数)

如:2008年6月1日 - 2008年12月25日,能否自动计算出两月之间的月份?
手工计算为:1 + 1 + 1 + 1 + 1 + 1 + 25/31 = 6.8064516129月 = 6.81(取两位小数)
6月 7月 8月 9月 10月 11月 12月

请问有没有什么函数可以自动计算的?因为一个公司职工进进出出的,随时有人辞退随时又
有新的员工进来,可否能弄个函数,只输入“入司日期”后便会自动算出“月份”?
请高手们不吝教悔,最好帮我弄一个传上来。谢谢!
如你所说:
既然要精确,建议按“日工资”计算而非“月工资”。这样直接用离职日期减去入司日期,即可得到天数差。

可否帮我设置一下,我可以研究研究。。。谢谢!

我把公式分解,作如下设定:
A1格填入“=today()”,今天日期。或填“2008-12-25”,你举例的日期。
A2格填入“入司日期”,你自己填。或填“2008-6-1”,你举例的日期。
B2~F2为分解计算答案过程:
B2计算两个日期举例的月数:=DATEDIF(A2,$A$1,"M")
C2计算两个日期举例的天数:=DATEDIF(A2,$A$1,"MD")+1
D2计算离职日期所在月份的天数:=DATE(YEAR($A$1),MONTH($A$1)+1,DAY($A$1))-$A$1
E2计算多出天数的小数(取两位):=ROUND(C2/D2,2)
F2为计算结果:=B2+E2
当然,你可以把上述公式写成一个公式也行,不过我为了解释方便,所以分解了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-02-17
既然要精确,建议按“日工资”计算而非“月工资”。这样直接用离职日期减去入司日期,即可得到天数差。

如果按提问,则比如入司日期为2月25日,离职为4月25日,那么怎么算?=4/28+1+25/30——非闰年
那么用计算方法又要更复杂一点。
假设入司日期在A1,离职日期在A2
=DATEDIF(EOMONTH(A1,0),EOMONTH(A2,-1),"m")——计算A1到A2掐头去尾的整月数
=(EOMONTH(A1,0)-A1+1)/DAY(EOMONTH(A1,0))——计算入司当月的工作天数占该月比例,如前面的4/28
=DAY(A2)/DAY(EOMONTH(A2,0))——计算离职当月工作天数占当月天数比例,如25/30。
总月份工龄就是这3个加起来的和。 四舍五入保留2位小数:
=ROUND(DATEDIF(EOMONTH(A1,0),EOMONTH(A2,-1),"m")+(EOMONTH(A1,0)-A1+1)/DAY(EOMONTH(A1,0))+DAY(A2)/DAY(EOMONTH(A2,0)),2)

注意:使用Excel2003的话需要加载宏→加载“分析工具库”才能使用EOMONTH。
不加载的公式:
=ROUND((DATE(YEAR(A1),MONTH(A1)+1,0)-A1+1)/DAY(DATE(YEAR(A1),MONTH(A1)+1,0))+DAY(A2)/DAY(DATE(YEAR(A2),MONTH(A2)+1,0))+DATEDIF(DATE(YEAR(A1),MONTH(A1)+1,0),DATE(YEAR(A2),MONTH(A2),0),"m"),2)

欢迎百度搜索“您可能正在到处寻找答案的Excel问题详解”
第2个回答  2009-02-17

=ROUND((DATEDIF(A2,B2,"d")+1)/30,2)*C2

请看图

第3个回答  2009-02-16
DATEDIF()
函数的

1、简要说明: 返回两个日期之间的年\月\日间隔数

2、基本语法: =DATEDIF(开始日期,结束日期,单位代码)

3、实例1:
题目: 计算出生日期为1973-4-1人的年龄

公式: =DATEDIF("1973-4-1",TODAY(),"Y")

结果: 33

简要说明 当单位代码为"Y"时,计算结果是两个日期间隔的年数.

4、实例2:
题目: 计算日期为1973-4-1和当前日期的间隔月份数.

公式: =DATEDIF("1973-4-1",TODAY(),"M")

结果: 403

简要说明 当单位代码为"M"时,计算结果是两个日期间隔的月份数.

5、实例3:
题目: 计算日期为1973-4-1和当前日期的间隔天数.

公式: =DATEDIF("1973-4-1",TODAY(),"D")

结果: 12273

简要说明 当单位代码为"D"时,计算结果是两个日期间隔的天数.

5、实例4:
题目: 计算日期为1973-4-1和当前日期的不计年数的间隔天数.

公式: =DATEDIF("1973-4-1",TODAY(),"YD")

结果: 220

简要说明 当单位代码为"YD"时,计算结果是两个日期间隔的天数.忽略年数差

5、实例5:
题目: 计算日期为1973-4-1和当前日期的不计月份和年份的间隔天数.

公式: =DATEDIF("1973-4-1",TODAY(),"MD")

结果: 6

简要说明 当单位代码为"MD"时,计算结果是两个日期间隔的天数.忽略年数和月份之差

5、实例6:
题目: 计算日期为1973-4-1和当前日期的不计年份的间隔月份数.

公式: =DATEDIF("1973-4-1",TODAY(),"YM")

结果: 7

简要说明 当单位代码为"YM"时,计算结果是两个日期间隔的月份数.不计相差年数