在实际工作中经常需要根据给定的日期计算其所属月份的最后一天,此时可以使用DateSerial函数完成计算, 同时这里我们还用到几个日期有关的函数YEAR,MONTH,DAY等
作者:来自网络
本月最后一天效果图
1484127097629942.jpg
本月最后一天VBA代码: Sub Serial() Dim DateStr As Byte DateStr = Day(DateSerial(Year(Date), Month(Date) + 1, 0)) MsgBox "本月的最后一天是" & Month(Date) & "月" & DateStr & "号"End Sub
代码详细解析:Serial过程配合使用了4个VBA内置函数Year、Month、Day和DateSerial完成计算并使用消息框显示当月最后一天的日期。Year、Month和Day函数分别返回代表指定日期的年、月、日的整数,语法如下:Year(Date) Month(Date) Day(Date)其中参数Date可以是任何能够表示日期的Variant、数值表达式、字符串表达式或它们的组合。DateSerial函数返回包含指定的年、月、日的Variant (Date),语法如下:DateSerial(year, month, day)其中参数year、 month、day分别表示指定的年、月、日。为了指定某个日期, DateSerial 函数中的每个参数的取值范围应该是可接受的,即日的取值范围应在1-31之间,而月的取值范围应在1-12之间。但是,当一个数值表达式表示某日之前或其后的年、月、日数时,也可以为每个使用这个数值表达式的参数指定相对日期。当任何一个参数的取值超出可接受的范围时,它会自动地在可接受的时间单位进行调整,例如本例中的day参数设置为0,则被解释成month参数指定月的前一天,即表达式Month(Date) + 1指定的下一个月的前一天,也就是本月的最后一天。
点击加入群:Excel部落结识Excel大神学好Excel,效率成倍提高,薪水稳步增长,职位快速提升
每天一个源创技巧,如觉得有用,请点上面关注。更重要手机转发分享 |