怎样用excel计算2个日期之间相差的月数

我想计算2个日期之间的月数相差,但是有2个条件:第一,每个月的1号到15号为该月上半月,记为半个月输出为0.5,16号到月底为下半月,则算满一个月,例如A1时间为2010-1-1,B1时间为2010-7-2,则C1要输出为6.5,如果A1不变,B1为2010-7-16,则C1要输出为7;第二,如果输入的2个时间都在同年同一个月内,则输出结果为0,例如A1时间为2010-1-1,B1时间为2010-1-16,则C1输出为0. 跪求Excel高手帮忙
希望能给出函数式

        如果您要计算两个日期之间的整月,忽略剩余的天数,那么使用datedif函数

=DATEDIF(A1,B1,"m")

       如果您不忽略剩余天数,也就是说那怕整月后余一天,也要算作一个月那么使用text函数

=TEXT(B1-A1,"m")

        连个函数所得结果依次为7、8,看下图



                                                    datedif




                                                       text            

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-07-29
经我试验,下面公式能满足你的要求.
假设:日期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))

另外要注意,使用上述公式的单元格的格式要设置为“常规”。
第2个回答  2010-07-30
=DATEDIF(A1,B1,"m")
A1的日期要小于B1
=DATEDIF(A1,B1,"Y")返回年
=DATEDIF(A1,B1,"d")返回天
或者你写成

=DATEDIF(MIN(A1:B1),MAX(A1:B1),"m")
就A1 B1 大小随便 公式自己区分了
第3个回答  2010-07-29
使用datedif函数,具体写为datedif(单元格1,单元格2,"m"),注意点是:第一点两个单元格确保是日期格式,第二点 单元格2的日期要单元格1的日期要新.
第4个回答  2019-02-15
如果您要计算两个日期之间的整月,忽略剩余的天数,那么使用datedif函数
=DATEDIF(A1,B1,"m")

如果您不忽略剩余天数,也就是说那怕整月后余一天,也要算作一个月那么使用text函数
=TEXT(B1-A1,"m")
连个函数所得结果依次为7、8,看下图
datedif

text
相似回答