excel中如何根据输入的年月计算出累计月份

2014年7月—2016年6月怎样求出累计时间?

1、在excel中从日期里面提取出年月日需要分别用到函数DAY(serial_number),MONTH(serial_number),YEAR(serial_number)。

2、其中,serial number 代表指定的日期或者引用的单元格。

3、serial_number有多种输入方式:带引号的文本串、序列号,以及其他公式或函数的结果。

4、从日期中提出日,输入函数:DAY(serial_number)。

5、从日期中提出月,输入函数:Month(serial_number)。excel中就可以根据输入的年月计算出累计月份了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-10-26

需要输入年月日的。如果不输入年月日,只输入年月的话,系统会把这个数据识别成文本,公式设置起来就麻烦得多。

如果是正常的年月日数据格式,可以直接用DATEDIF函数计算出相差的年月乃至日。如果源数据只是年月,没写日的话,需要用DATE函数转换,DATE参数中,需要嵌套进去用MID函数把年和月单独提取出来的数据,再指定一个日参数,转换成年月日数据格式,然后在嵌套上DATEDIF格式即可计算出来。

建议你把原表数据截图上来,看看你的日期实际数据是什么样的,方便设置公式。

如果你对年月的日期不是很敏感,只是求月份差的话,可以用结束年份减去起始年份得出的和再乘以12,然后加上结束时间的月份减去起始时间的月份的差,如果不是周月,两头的月份都算上的话,最后需要再加上1才能对的。就你举的这个例子,2014年7月到2016年6月,如果是周月,那么只有23个月,如果是两头的月份都算上,正好是两年。

例如A1为文本格式的起始年月,B1为文本格式的结束年月,那么C1就可以写公式:

=(LEFT(B1,4)-LEFT(A1,4))*12+(MID(B1,6,LEN(B1)-6)-MID(A1,6,LEN(A1)-6))+1   

来计算月份,这个月份是两头的月份都算上,所以最后加1,不+1算的则是周月。之所以使用len函数来计算MID的取值长度,是因为月份可能会是一位数,也可能是两位数(例如12月),当月份是一位数的时候取值一位,当月份是两位数的时候取值两位。

如果是日期格式,例如A4是起始日期,B4是结束日期,那么可以直接使用DATEDIF函数。因为DATEDIF函数计算是以日期为准计算的,只要不足月,都不算在内。从2014年的7月1日到2016年的6月1日,其实只有23个周月。如果需要算两头的话,最后可以+1。

你自己试试吧。用心回答,希望能得到你的认可。如果以后有其他的EXCEL函数和公式问题,欢迎@我进行探讨。

如果回答不是你要的,请把表截图发上来,看看你的原表是什么样的数据,根据实际数据设置公式是最合适的。

本回答被网友采纳
第2个回答  2018-10-26

如图,在B1写公式:

=IFERROR(DATEDIF(--REPLACE(A1,FIND("-",A1),99,),--REPLACE(A1,1,FIND("-",A1),),"M"),"")

下拉填充

相似回答