如果您要计算两个日期之间的整月,忽略剩余的天数,那么使用datedif函数
=DATEDIF(A1,B1,"m")
如果您不忽略剩余天数,也就是说那怕整月后余一天,也要算作一个月那么使用text函数
=TEXT(B1-A1,"m")
连个函数所得结果依次为7、8,看下图
datedif
text
经我试验,下面公式能满足你的要求.
假设:日期1位于A1单元格,日期时间2位于B1单元格,且时间2大于时间1。
那么你要的公式就如下,
=IF((YEAR(B1)-YEAR(A1))*12+MONTH(B1)-MONTH(A1)=0,0,(YEAR(B1)-YEAR(A1))*12+MONTH(B1)-MONTH(A1)+IF(DAY(B1)-DAY(A1)>15,1,0.5))
另外要注意,使用上述公式的单元格的格式要设置为“常规”。
=DATEDIF(A1,B1,"m")
A1的日期要小于B1
=DATEDIF(A1,B1,"Y")返回年
=DATEDIF(A1,B1,"d")返回天
或者你写成
=DATEDIF(MIN(A1:B1),MAX(A1:B1),"m")
就A1 B1 大小随便 公式自己区分了
使用datedif函数,具体写为datedif(单元格1,单元格2,"m"),注意点是:第一点两个单元格确保是日期格式,第二点 单元格2的日期要单元格1的日期要新.
如果您要计算两个日期之间的整月,忽略剩余的天数,那么使用datedif函数
=DATEDIF(A1,B1,"m")
如果您不忽略剩余天数,也就是说那怕整月后余一天,也要算作一个月那么使用text函数
=TEXT(B1-A1,"m")
连个函数所得结果依次为7、8,看下图
datedif
text