我知道如何使用Outlook.AdvancedSearch()
方法进行搜索。我想要的是基于我的搜索参数,用VBA代码填充高级查找对话框中的构建,如下所示。
我想要的是在搜索最终用户的最后选择性地从结果中选择和移动。
修改
如果这不可能(如我的搜索所示),那么如何将结果保存到搜索文件夹中?当我使用Search.Save()
方法并且该文件夹已存在时,我收到错误。至少我想在搜索完成后使搜索文件夹处于活动状态。
答案 0 :(得分:1)
您可以使用以下代码解析名称空间ns
中的文件夹:
ns.Folders("Personal Folders").Folders("Inbox")
在此主题中找到:Access Outlook default folder
因此,您可以在创建搜索文件夹之前检查它是否已存在。
您还可以阻止错误或处理错误,例如:
On Error Resume Next
'Create folder (won't raise error if already exists)
On Error GoTo 0
最后,要激活搜索文件夹,您可以使用CurrentFolder
属性:
Sub ChangeCurrentFolder()
Dim myolApp As Outlook.Application
Dim myNamespace As Outlook.NameSpace
Set myolApp = CreateObject("Outlook.Application")
Set myNamespace = myolApp.GetNamespace("MAPI")
Set myolApp.ActiveExplorer.CurrentFolder = _
myNamespace.GetDefaultFolder(olFolderCalendar)
End Sub
有关详细信息,请参阅MSDN。