显示高级搜索项目而不保存在文件夹中 Outlook vba
Posted
技术标签:
【中文标题】显示高级搜索项目而不保存在文件夹中 Outlook vba【英文标题】:displaying the items of advanced search without saving in folder outlook vba 【发布时间】:2018-01-17 16:54:22 【问题描述】:我想通过 excel vba 在 Outlook 中运行高级搜索,以便找到一些电子邮件并自动回复其中一封。
我的问题是我不知道如何将搜索结果作为一组项目来处理,按日期对它们进行排序并回复最近的一个而不将它们保存在任何搜索文件夹中。
到目前为止,我只能运行高级搜索并将搜索结果保存到文件夹中:
Sub test()
Dim Outl As Object
Dim TESTEfolder As Object
Dim Search As Object
Set Outl = CreateObject("Outlook.Application")
Set TESTEfolder = Outl.GetNamespace("MAPI").GetDefaultFolder(6).Folders("TESTE")
Set Search = Outl.AdvancedSearch("'" & TESTEfolder.FolderPath & "'")
Search.Save ("TESTEcopy") 'I want to skip this and handle the Items inside Search directly
End Sub
注意:我必须使用 LATE 绑定和高级搜索,而不是 Find/Restrict/InStr
谢谢!
【问题讨论】:
为什么要在 Excel 中使用 VBA 来执行此操作? 因为这将是 Excel 工作簿的一部分,将分发给多个用户,所以它应该是独立的 【参考方案1】:您无需保存搜索。完成高级搜索后,Outlook.Application 对象会引发一个事件: https://msdn.microsoft.com/VBA/Outlook-VBA/articles/application-advancedsearch-method-outlook
【讨论】:
以上是关于显示高级搜索项目而不保存在文件夹中 Outlook vba的主要内容,如果未能解决你的问题,请参考以下文章
Outlook 高级搜索属性 GlobalAppointmentID
如何在Outlook中使用OLE在前面(而不是在背景上)显示新的电子邮件表单?