使用 ontime 我想在每个月末激活宏。在这我可以把天设置为 31,但是有 30 天或像 2 月这样的月份呢?If Day(Now) = 1 Then Application.ontime TimeValue("6:30:00"), "monthly" End If
1 回答
0
所以,我会提出下一个方法。否则,必须有人处理文件并提交特定事件:
创建一些能够在特定时间(06:30:00)调用第二天所需的函数的事件:
Private Sub Workbook_Open()
Application.OnTime TimeSerial(6, 30, 0), "DoSomething_Eomonth"
End Sub
Private Sub Workbook_SheetActivate(ByVal sh As Object)
Application.OnTime TimeSerial(6, 30, 0), "DoSomething_Eomonth"
End Sub
确保在前几天打开讨论中的工作簿并且(也许)已经完成了一些工作。它必须保持打开状态。
每日调用递归Sub
将如下所示:
Sub DoSomething_EndOfMonth()
If Day(Date + 1) = 1 Then
'Do what is to be done
Else
Application.OnTime TimeSerial(6, 30, 0), "DoSomething_Eomonth"
End If
End Sub
于 2020-08-10T12:52:50.657 回答