Excel计算两个日期时间差的函数?

Excel计算两个日期时间差的函数?,第1张

Excel中怎么计算两个日期的时间差,下面一起来看看吧,希望对大家有所帮助。

1、首先在打开的表格中,在单元格D35中输入公式DATEDIF(A35、B35、"YM")YM表起始日期、结束日期月数差。

2、在单元格E35中输入公式DATEDIF(A35、B35、"MD")MD表起始日期、结束日期天数差。

3、接着在单元格F35中输入公式DATEDIF(A35、B35、"D")D表示时间段中的天数。

4、最后即可得到例子中的日期之间相差两年三个月零四天,共相差826天。

结果:

相差569天

#include <stdio.h>

#ifndef __SDATE__

#define __SDATE__

struct SDate {

short int year

short int month

short int day

}

#endif

int IsLeapYear(short year)

int DaysOfOneYear(SDate sd)

int SDateToAbsDays(SDate sd)

int IsLeapYear(short year) {

return year%4==0&&year%100||year%400==0

}

int DaysOfOneYear(SDate sd) {

switch(sd.month-1) {

case 11:

sd.day+=30

case 10:

sd.day+=31

case 9:

sd.day+=30

case 8:

sd.day+=31

case 7:

sd.day+=31

case 6:

sd.day+=30

case 5:

sd.day+=31

case 4:

sd.day+=30

case 3:

sd.day+=31

case 2:

sd.day+=IsLeapYear(sd.year)?29:28

case 1:

sd.day+=31

}

return sd.day

}

int SDateToAbsDays(SDate sd) {

int years = sd.year -1

int days = years*365 + years/4 - years/100 + years/400

days+=DaysOfOneYear(sd)

return days

}

int main()

{

SDate d1={2008,3,16},d2={2009,10,6}

int day=SDateToAbsDays(d2)-SDateToAbsDays(d1)

printf("相差%d天\n",day)

}

比如A1单元格是2015/1/1 B1单元格是2015/2/1

两个单元格的日期之差需要显示在C1单元格里 需要在C1单元格里写上如下

=datedif(A1,B1,"d") 或者

=datedif(A1,B1,"m") 或者

=datedif(A1,B1,"y")

三个公式分别是相差天数、月数、年数

PS:如果求A1单元格和当天日期所差 可以这样:

=datedif(A1,today(),"d")


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8154929.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-13
下一篇2023-04-13

发表评论

登录后才能评论

评论列表(0条)

    保存