【问题标题】:Create an Outlook reminder every two hours每两小时创建一次 Outlook 提醒
【发布时间】:2019-11-21 15:03:05
【问题描述】:

我正在添加 Outlook 提醒以运行一些代码。我希望它每两个小时运行一次。

下面是我每天同时运行的一个示例。因此,今天,当 Outlook 提醒启动时,它会运行一些代码,然后创建一个新提醒,时间为从该提醒开始后两个小时。

例如,如果此提醒在上午 7:30 运行,我希望在上午 9:30 和上午 11:30 等时间创建新提醒。

我正在为创建下一个提醒的语法而苦苦挣扎。我的部分困惑是日期何时更改。

Case "Move Files"

Move_FILES

Call New_Task("Move ENGIE Files", DateAdd("d", 1, Date), " 7:30:00 AM")

vAuto = True

我已将此代码用于许多不同的流程,并且已经使用了很多年。唯一的区别是现在它需要每两个小时运行一次。

Sub New_Task(vSubject As String, vDueDate As Date, vTime As String)

    Dim myItem As Outlook.TaskItem
    Set myItem = Application.CreateItem(olTaskItem)

    With myItem

        .Subject = vSubject
        .DueDate = vDueDate
        .ReminderTime = vDueDate & vTime
        .Save
        DoEvents
        .ReminderSet = True
        .Save
        DoEvents
        .ReminderSet = True
        DoEvents
        .Save
        DoEvents
        .Close (olSave)
        DoEvents

    End With

    Set myItem = Nothing

End Sub

【问题讨论】:

    标签: vba outlook reminders


    【解决方案1】:

    我能够通过在 CASE 语句的开头添加几行来解决我的问题。我添加了 2 个变量并使用它们来计算下一次提醒的日期和时间。然后我将这两个变量传递给 New_Task 模块。如果有人想看看我是如何解决我的问题的。谢谢……。

    Case "Move ENGIE Files"
    
    Dim MyTimer As String
    Dim MyDate As Date
    
    vTime = ""
    MyTimer = ""
    MyDate = 0
    MyTimer = CDate(Now)
    MyTimer = DateAdd("h", 2, MyTimer)
    MyDate = Format(MyTimer, "MM/DD/YYYY")
    MyTimer = Format(MyTimer, "HH:MM AM/PM")
    MyTimer = " " & MyTimer
    
    Move_Files
    
    Call New_Task("Move ENGIE Files", MyDate, MyTimer)
    
    vAuto = True
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-28
      • 1970-01-01
      • 2022-11-23
      • 1970-01-01
      • 1970-01-01
      • 2022-12-18
      • 1970-01-01
      相关资源
      最近更新 更多