通过名称和两个日期之间的相应天数计算月份

时间:2018-12-03 18:38:33

标签: excel vba days

我需要一个简单的VBA代码,该代码将告诉我两个日期之间的月份名称以及该月份的相应日期,如下所示。如果需要,它应该在两个日期之间自动添加行。 如果有人可以为excel VBA编写代码,我将非常感谢。

START DATE 20/10/2017   END DATE 15/10/2018
Oct-17  11
Nov-17  30
Dec-17  31
Jan-18  31
Feb-18  28
Mar-18  31
Apr-18  30
May-18  31
Jun-18  30
Jul-18  31
Aug-18  31
Sep-18  30
Oct-18  15

enter image description here

1 个答案:

答案 0 :(得分:2)

在第一栏中放入并复制下来:

=IF(DATE(YEAR($A$1),MONTH($A$1)+ROW(1:1)-1,1)<$B$1,DATE(YEAR($A$1),MONTH($A$1)+ROW(1:1)-1,1),"")

然后在下一列中放置:

=IF(A2<>"",IF(AND(MONTH(A2)=MONTH($A$1),YEAR(A2)=YEAR($A$1)),EOMONTH(A2,0)-$A$1,IF(AND(MONTH(A2)=MONTH($B$1),YEAR(A2)=YEAR($B$1)),$B$1-EOMONTH(A2,-1),DAY(EOMONTH(A2,0)))),"")

然后抄下来。

enter image description here

您将需要格式化第一列mmm-yy