我想在 Outlook 2007 中添加一个宏,在关闭 Outlook 时询问我是否要打开外出助手,然后在打开 Outlook 时询问我是否要关闭外出助手。我找到了在关闭时创建提示的说明(在Outlook 2010:如何在 Outlook 关闭时自动打开外出办公功能?和http://itknowledgeexchange.techtarget.com/itanswers/automating-out-of-office/),但我不知道如何为打开时的提示编写宏。
答案1
Private Sub Application_Quit()
OutOfOffice True
End Sub
这是您感兴趣的部分。
Private Sub Application_Startup()
OutOfOffice False
End Sub
Sub OutOfOffice(bolState As Boolean)
Const PR_OOF_STATE = "http://schemas.microsoft.com/mapi/proptag/0x661D000B"
Dim olkIS As Outlook.Store, olkPA As Outlook.PropertyAccessor
For Each olkIS In Session.Stores
If olkIS.ExchangeStoreType = olPrimaryExchangeMailbox Then
Set olkPA = olkIS.PropertyAccessor
olkPA.SetProperty PR_OOF_STATE, bolState
End If
Next
Set olkIS = Nothing
Set olkPA = Nothing
End Sub
有一条注释“未使用 Outlook 2010 测试代码”。
此外,“计算机上必须安装 CDO(协作数据对象)。如果您发现未安装 CDO,则可以从此 Microsoft 页面下载它。”