我正在尝试弄清楚如何在Excel VBA中使用时间延迟。
这就是我想要做的事情:
我在宏中有一个按钮,当我点击它时,它会发送第一封电子邮件。然后在1小时后,我想自动发送第二封电子邮件,而无需单击其他按钮或再次运行程序。
我有这段代码可以设置时间。然后在时间到期后,它将运行宏。我想做的是在第一次发送后的一小时内自动发送第二封电子邮件。
Private Sub Workbook_Open()
Dim sSetTimer As Date
sSetTimer = Sheets("SetTime").Cells(1, 1)
Application.OnTime TimeValue(sSetTimer), "Orayt"
End Sub
答案 0 :(得分:3)
首次添加一小时并使用它来启动辅助流程。
Application.OnTime TimeValue(sSetTimer), "Orayt"
Application.OnTime TimeValue(sSetTimer) + TimeSerial(0, 1, 0), "Orayt2"