打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
VBA 技巧:计算一个月有多少天?

问题:

有时我们需要知道一个月有多少天,或者知道最后一天是31号还是30号

我们可以通过VBA代码来计算

Sub nb_days_month()

'将日期传入变量,月/日/年
date_test = CDate("6/2/2012")

'获取该月的天数
nb_days = Day(DateSerial(Year(date_test), Month(date_test) + 1, 1) - 1)

End Sub

代码解析:

  • 将日期传入变量,月/日/年
  • 获取日期中的年份和月份
  • 获取下个月的第一天
  • 使用下个月的第一天减 1 ,即可得到这个月的最后一天
  • 最后一天,即是该月的天数
Sub nb_days_month()

'将日期传入变量,月/日/年
date_test = CDate("6/2/2012")

'获取日期中的年份和月份
var_month = Month(date_test)
var_year = Year(date_test)

'获取下个月的第一天
date_next_month = DateSerial(var_year, var_month + 1, 1)

'使用下个月的第一天减 1 ,即可得到这个月的最后一天
last_day_month = date_next_month - 1

'最后一天,即是该月的天数
nb_days = Day(last_day_month)

End Sub

将代码转变为自定义函数

Function NB_DAYS(date_test As Date)
NB_DAYS = Day(DateSerial(Year(date_test), Month(date_test) + 1, 1) - 1)
End Function

Sub example()
test = NB_DAYS(Range("A1"))
MsgBox test
End Sub


今天我们给大家分享了,如何使用VBA计算一年中月份的天数,大家都学会了吗?

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Excel-VBA批量创建文件夹
想知道每月最后一天是什么日期吗?没问题!VBA代码给你解决
VBA DateSerial()函数
VBA代码库12:处理日期和时间
Access 计算年龄或者日期
vba判定任意月份的天数
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服