Vba Outlook DASL-发送方和接收方相同时跳过

Vba Outlook DASL-发送方和接收方相同时跳过,vba,outlook,Vba,Outlook,我正在尝试使用DASL查询来筛选发件人和收件人不相同的电子邮件。尝试了下面的方法,但似乎不起作用。请问我在这里做错什么了吗 我收到一条错误消息“无法在…分析条件” Dim PR_RECEIVED_BY_NAME as String = "http://schemas.microsoft.com/mapi/proptag/0x0040001E" Dim PR_SENT_REPRESENTING_NAME as String = "http://schemas.microsoft.com/mapi/

我正在尝试使用DASL查询来筛选发件人和收件人不相同的电子邮件。尝试了下面的方法,但似乎不起作用。请问我在这里做错什么了吗

我收到一条错误消息“无法在…分析条件”

Dim PR_RECEIVED_BY_NAME as String = "http://schemas.microsoft.com/mapi/proptag/0x0040001E"
Dim PR_SENT_REPRESENTING_NAME as String = "http://schemas.microsoft.com/mapi/proptag/0x0042001E"

strFilter = "@SQL=" & "%last7days(urn:schemas:httpmail:datereceived)% AND (" & PR_RECEIVED_BY_NAME & "<>" & PR_SENT_REPRESENTING_NAME & ")
Dim PR\u由\u NAME以字符串形式接收http://schemas.microsoft.com/mapi/proptag/0x0040001E"
Dim PR_SENT_表示_NAME为字符串=”http://schemas.microsoft.com/mapi/proptag/0x0042001E"
strFilter=“@SQL=“&”%last7days(urn:schemas:httpmail:datereceived)%AND(“&PR\u RECEIVED\u BY\u NAME&”&PR\u SENT\u表示\u NAME&”)
  • 在运行任何限制之前,需要对集合进行排序

  • 我建议使用如下条件,而不是使用
    last7days

  • 通过获取另一个属性值并将其用作常量,尝试在搜索条件中使用单个属性名。希望有帮助
  • 在运行任何限制之前,需要对集合进行排序

  • 我建议使用如下条件,而不是使用
    last7days

  • 通过获取另一个属性值并将其用作常量,尝试在搜索条件中使用单个属性名。希望有帮助

  • 如果我没记错的话,OOM不支持在查询中比较两个属性,只支持带有常量的属性-这将(在扩展MAPI级别)需要
    RES\u COMPAREPROPS
    限制支持,而OOM不提供这一支持


    像往常一样,您需要扩展MAPI(C++或Delphi)或(任何语言)来实现这一点。

    如果我没记错的话,OOM不支持在查询中比较两个属性,只支持带有常量的属性-这将(在扩展MAPI级别上)需要
    RES_COMPAREPROPS
    限制支持,而OOM不提供


    像往常一样,您需要扩展MAPI(C++或Delphi)或(任何语言)来实现此目的。

    撇开日期因素不谈,只尝试了DASL。但strFilter=“@SQL=”“””仍然不走运“'尝试将
    替换为
    不同。Outlook似乎不支持在同一筛选器中比较Dmitry建议的两个属性。因此,我建议获取其中一个的值,并使用一个先前提取的属性名和值。但是strFilter=“@SQL=”“”“”仍然不走运。请尝试将
    替换为
    而不是
    。Outlook似乎不支持像Dmitry建议的那样在同一筛选器中比较两个属性。因此,我建议获取其中一个的值,并使用前面提取的单个属性名和值。
    
    
    "@SQL=""urn:schemas:httpmail:datereceived"" <" & Format("6/10/2020 3:30pm", "ddddd h:nn AMPM") & "'"
    
    
    filter = "@SQL=""http://schemas.microsoft.com/mapi/proptag/0x0037001f"" = 'can''t'"