使用Excel VBA在多收件箱环境中搜索特定的outlook收件箱

使用Excel VBA在多收件箱环境中搜索特定的outlook收件箱,vba,excel,outlook,Vba,Excel,Outlook,我试着搜索了很多论坛,但是没有找到解决我问题的方法。我承认我对VBA对象的理解是有限的。我有一个Excel VBA报告,它创建一个Outlook对象,然后扫描Outlook默认收件箱,直到找到一封未读的电子邮件。我已经得到了在我的电脑上完美运行的代码。但是,运行此功能的计算机有两(2)个与Outlook关联的不同电子邮件地址/收件箱(一个是个人收件箱,另一个是组收件箱) 我用来搜索个人收件箱的代码如下(它继续搜索未读的电子邮件等): 但是,这只指向默认的收件箱(即个人电子邮件)。如何将其更改为将

我试着搜索了很多论坛,但是没有找到解决我问题的方法。我承认我对VBA对象的理解是有限的。我有一个Excel VBA报告,它创建一个Outlook对象,然后扫描Outlook默认收件箱,直到找到一封未读的电子邮件。我已经得到了在我的电脑上完美运行的代码。但是,运行此功能的计算机有两(2)个与Outlook关联的不同电子邮件地址/收件箱(一个是个人收件箱,另一个是组收件箱)

我用来搜索个人收件箱的代码如下(它继续搜索未读的电子邮件等):

但是,这只指向默认的收件箱(即个人电子邮件)。如何将其更改为将对象设置为搜索组电子邮件收件箱

我不能确定(因为我现在不在运行Outlook的计算机上,因此无法使用Outlook),但我认为您的问题的答案可能包含在的答案中

我认为关键在于线路

Set f=olns.Folders(“邮箱-名称,名称”)

这与你的陈述平行但不同

Set oOlInb=oOlns.GetDefaultFolder(olFolderInbox)

祝你好运

我不能确定(因为我现在不在运行Outlook的计算机上,因此无法使用Outlook),但我认为您的问题的答案可能包含在的答案中

我认为关键在于线路

Set f=olns.Folders(“邮箱-名称,名称”)

这与你的陈述平行但不同

Set oOlInb=oOlns.GetDefaultFolder(olFolderInbox)

祝你好运

    Application.ScreenUpdating = False
    Dim oOlAp As Object, oOlns As Object, oOlInb As Object
    Dim oOlItm As Object, oOlAtch As Object
    '~~> New File Name for the attachment
    Dim NewFileName As String
    NewFileName = "ActInv Export"
    '~~> Get Outlook instance
    Set oOlAp = GetObject(, "Outlook.application")
    Set oOlns = oOlAp.GetNamespace("MAPI")
    Set oOlInb = oOlns.GetDefaultFolder(olFolderInbox)