忘记大小月和平润年,VBA也可以帮你找回昨天

微信公众号原文

系统:Windows 7
软件:Excel 2010

使用场景or困惑:

- 昨天是几号,你知道吗?
- 核心问题是每月的天数是不一样的,有没有简单的方法

案例演示

忘记大小月和平润年,VBA也可以帮你找回昨天_第1张图片
1.gif

执行结果

忘记大小月和平润年,VBA也可以帮你找回昨天_第2张图片
1.png

问题

已知今天的日期,昨天是几号

代码

Sub test()
    Rem>>昨日之日不可留 今日之日多烦忧
    Rem>>
    Dim today
    Dim yesterday
    
    Set sht = ThisWorkbook.Worksheets("示例")
    maxRow = sht.Cells(Rows.Count, "A").End(xlUp).Row
    
    For i = 2 To maxRow Step 1
        today = sht.Cells(i, "A")
        yesterday = DateAdd("d", -1, today)
        sht.Cells(i, "B") = yesterday
    Next i
End Sub

代码截图

忘记大小月和平润年,VBA也可以帮你找回昨天_第3张图片
2.png

部分代码解读

  1. yesterday = DateAdd("d", -1, today),在已知时间的基础上按照固定时间间隔进行计算获取新的时间点
  2. DateAdd(间隔单位,间隔数值,基础值),间隔数值可正可负,正值表示未来,负值表示过去

常用间隔单位(官方)

忘记大小月和平润年,VBA也可以帮你找回昨天_第4张图片
3.png


以上为本次的学习内容,下回见

如发现有错误,欢迎留言指出


更多精彩,请关注微信公众号
扫描二维码,关注本公众号

公众号底部二维码.jpg

你可能感兴趣的:(忘记大小月和平润年,VBA也可以帮你找回昨天)