【问题标题】:How to set a recurring Out of Office for same time every week?如何设置每周同一时间重复外出?
【发布时间】:2021-09-08 15:14:58
【问题描述】:

我不在星期五从 12 点到 5 点工作。这次我需要设置一个自动重复的外出回复。我使用 Office 365。

我搜索并找不到任何我尝试过的示例。

Private Sub Application_Quit()
    Dim objMAPISession As Object
    Set objReminders = Nothing
    If MsgBox(“Would you like to turn the Out of Office Assistant on?”, vbYesNo, “Activate Out of Office Assistant”) = vbYes Then
        Set objMAPISession = CreateObject(“MAPI.Session”)
        objMAPISession.Logon , , True, False
        objMAPISession.OutOfOffice = True
        objMAPISession.Logoff
    End If
    Set objMAPISession = Nothing
End Sub

【问题讨论】:

  • 您是否收到任何特定的错误消息?就目前而言,您的 If 语句将不起作用 - 它要么需要全部为一行 (If MsgBox(“Would you like to turn the Out of Office Assistant on?”, vbYesNo, “Activate Out of Office Assistant”) = vbYes Then),要么在 , 之后有一个续行字符 (_)。此外,您的代码不包含任何日期/时间检查,这可能是一个不错的起点。
  • 另外 - 根据this 问题,您可能需要检查您尝试执行的操作是否需要访问 Exchange Web 服务
  • 谢谢,我仍然收到与此行有关的语法错误: If MsgBox(“Would you like to turn the Out of Office Assistant on?”, vbYesNo, “Activate Out of Office Assistant”) = vbYes 那我该如何解决呢?
  • 啊,刚刚注意到您已将正确的双引号 (") 替换为弯引号 (“ and ”) - 将它们更正为键盘上的直引号,它应该解决这个问题
  • 感谢您解决了这个问题。我现在收到错误:运行时错误“424”:需要对象

标签: vba outlook


【解决方案1】:

只能使用 EWS 设置 Outlook Office 时间范围。旧版本的 Exchange(即 CD 1.21 的设计目的)只能将 OOF 设置为打开或关闭;不支持时间范围。

但即使在最新版本的 Exchange 中,也无法将 OOF 安排为重复模式,您必须手动执行此操作。

【讨论】:

  • 我能否修复上面的代码,以便在我退出 Outlook 时设置一个按钮来打开它,至少在我离开时它会提示我打开它?
  • 这是它的本意,但我得到一个运行时错误 424 - object required,我不确定为什么?
  • 您确定安装了 CDO 1.21 吗?您可以手动下载它,因为 Outlook 不再安装它。
  • @MattD 你知道你在哪一行收到错误消息吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多