EXCEL中如何计算两个日期之间的天数

计算利息需要计算日期间天数,但是大月也不能算31天只能算30天,日期格式为2012-12-01,用DATEDIF函数回车后为错误。用c1=a1-a1+1算会有的月份为3天。我研究出了大概公式为“if月份2=月份1,则c1=b1-a1+1,if月份2不等于月份1,则c1=(30-日1)+30*(月份2-月份1-1)+日2”,求高手把我的公式转换成EXCEL能运算的公式,或者帮我做一个公式达到目的也行。

这就是用datedif函数就可以解决的事呀
如你的日期在A列,公式=datedif(a1,today(),"d")
这样就得到A1日期到今天(当前系统日期)的天数
如果你A是开始日期,B是结束日期,那么
=datedif(a1,b1,"d")就是这些天数,这是间隔的天数,如果你要从开始的当天也算一天,公式后面加1即可

=datedif(a1,today(),"d")+1追问

那只算30不论哪个月份都不能有31天怎么体现

追答

你是要月份最高天数??且最高只算30天?还是每月都按30天?如果是每月都按30天计算
=days360(a1,today())

=days360(a1,b1)

追问

每月都按30天算

追答

=days360(a1,today())

=days360(a1,b1)

追问

=days360(a1,b1)没算当天,而我在公式后 1出现报错

追答

=DAYS360(A1,TODAY())+1


=DAYS360(A1,B1)+1

单元格设置为常规
怎么错法?

追问

我用2012-1-28和2012-2-2试,=DAYS360(A1,B1)算出4,用=DAYS360(A1,B1) 1算得出1990-1-4,是不是c3的格式问题?

追答

是,你把单元格格式设置为常规即可。1900-1-4,实际上就是4,即日期系统的第4天。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-09-22

excel如何计算日期间隔天数?这个视频告诉你!

第2个回答  2013-02-27
=DAYS360(A1,B1)追问

不能算当天,在公式后加1出现错误

追答

公式后加1没问题啊:
=DAYS360(A1,B1)+1

追问

我用2012-1-28和2012-2-2试,=DAYS360(A1,B1)算出4,用=DAYS360(A1,B1) 1算得出1990-1-4,是不是c3的格式问题?

追答

格式设置为常规即可

第3个回答  2013-02-27
1月28日至2月2日,你算几天?追问

算5天,我前面的30-日1那里可能还要加上1

追答

A1是开始日期,B1是开始日期的下一个月的第一天,C1是结束日期
D1=MIN(30,DATEDIF($A$1,MIN(today(),$B$1),"d"))+if($C$1<=$B$1),0,DAYS360($B$1,$C$1))
这个结果基础上,如果开始日期是2月份,则开始这一年的2月不用减去2(平年)或1(闰年),后面的每1年中如果包含了整个2月份,则该年份中2月多出的天数"2(平年)或1(闰年)"需减去。
就是最后的结果了。

第4个回答  2013-02-27
直接做减法就可以啊