excel - 使用 VBA 无法获取月份和剩余天数中的两个日期之间的差异
问题描述
在 Excel 中的 DateDiff 函数,也让我们使用属性如 MD :查找计算月份后的剩余天数,但无法在 VBA 中使用
例如
Start Date: 7/8/2020
End Date: 6/3/2021
答案应该是:10个月26天
请让我知道使用 VBA excel 执行此操作的方法
fromDate = TextBox1.Value
Dim toDate As Date
toDate = TextBox2.Value
diff = DateDiff("m", fromDate, toDate) – To find months
totaldays = DateDiff("d", fromDate, toDate) – To find total days
projected_Date = DateAdd("m", (diff), fromDate) – Adding the month to start date
days_diff_proj = DateDiff("d", projected_Date, toDate) Finding the remaining days
TextBox3.Value = CStr(diff) + " Months " + CStr(days_diff_proj) + " Days "
解决方案
我假设 toDate 总是比 fromDate 大。
您首先计算月差的尝试很好。但是,当 VBA 进行舍入时,您需要发现计算的月数太大的情况 - 在这种情况下,通过将月数减一来进行计算。
Dim month_diff_proj As Long
month_diff_proj = DateDiff("m", fromDate, toDate)
Dim projected_Date As Date, days_diff_proj As Long
projected_Date = DateAdd("m", month_diff_proj, fromDate)
If projected_Date > toDate Then
month_diff_proj = month_diff_proj - 1 ' reduce by 1 month
projected_Date = DateAdd("m", month_diff_proj, fromDate)
End If
days_diff_proj = DateDiff("d", projected_Date, toDate)
Debug.Print month_diff_proj, days_diff_proj
推荐阅读
- python - 插入主键也是外键的表时出现 SQLAlchemy 错误
- cdap - 如何在 Wrangler 中使用自定义转换?
- javascript - 为什么我调用这些函数时结果不同?
- html - 在 MVC 视图中使用 Sections 和 Articles 而不是表有什么好处?
- wordpress - Wordpress 设置帖子中第一张图片的特色图片
- elasticsearch - 弹性docker 6图像启动问题
- javascript - 将带有对象的数组转换为数组
- r - 如何将具有许多计算的整个脚本应用于 data.frame 中的每一列
- spring - 使用spring的kafka集群之间的事务传输消息
- python - Modify all local links in html file