excel表格中怎样计算两个日期之间的月数?并自动区分大月和小月,大月31天和小月30天的只显示1月

例如:A1为6月15日,B1为8月23日。分别为:6月份到6月底为16天为:0.53月;7月份1月,8月份23天为0.74月。我现在要直接在C1里直接求出这期间的月数2.27月,或显示几月几天也可以 。
主要是对按月计价的计算,满月的不分大小月按1月计算,不满一月的按照实际天数计算。求高手赐教

C1求A1所在月的天数:=DAY(DATE(YEAR(A1),MONTH(A1)+1,0))
D1求B1所在月的天数:=DAY(DATE(YEAR(B1),MONTH(B1)+1,0))
E1求两个日期相差的整月数:=DATEDIF(A1,B1,"m")-1
F1求A1的天数:=DAY(A1)
G1求B1的天数:=DAY(B1)
你的所求:=E1+(C1-F1+1)/C1+G1/D1=E1 + 1 +G1/D1 - (F1-1)/C1
综合起来:=DATEDIF(A1,B1,"m")+ROUND(DAY(B1)/DAY(DATE(YEAR(B1),MONTH(B1)+1,0)),2)-ROUND((DAY(A1)-1)/DAY(DATE(YEAR(A1),MONTH(A1)+1,0)),2)&"月"
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-09-25
=datedif(a1,b1,"m")
=DATEDIF(A1,B1,"m")&"个月"&(B1-DATE(YEAR(A1),MONTH(A1)+DATEDIF(A1,B1,"m"),DAY(A1)))&"天"

=TEXT(DATEDIF(A1,B1,"m")+(B1-DATE(YEAR(A1),MONTH(A1)+DATEDIF(A1,B1,"m"),DAY(A1)))/DAY(DATE(YEAR(A1),MONTH(A1)+DATEDIF(A1,B1,"m")+1,1)-1),"0.00月")

这是你要的两种形式
相似回答