使用Excel VBA在多收件箱环境中search特定的Outlook收件箱

我试图search一堆论坛,但一直没能find解决我的问题。 我会承认,我对VBA对象的理解是有限的。 我有一个Excel VBA报告创build一个Outlook对象,然后扫描Outlook默认收件箱,直到它find一个未读的电子邮件。 我已经得到了代码在我的电脑上完美的工作。 但是,运行该软件的计算机有两(2)个不同的与Outlook绑定的电子邮件地址/收件箱(一个是个人收件箱,另一个是收件箱)。

我一直用来search我的个人收件箱的代码是(它继续search未读的电子邮件等):

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) 

但是,这只能指向默认收件箱(即个人电子邮件)。 如何更改它以设置对象以search群组电子邮件收件箱?

我不能确定(因为我现在不在计算机上运行Outlook,所以不能玩弄它),但我想你的问题的答案可能包含在这个问题的答案构build跟踪器共享的Outlook邮箱 。

我在想,关键在于这条线

Set f = olns.Folders("Mailbox - Name, Name")

这与你的陈述是平行的但不同的

Set oOlInb = oOlns.GetDefaultFolder(olFolderInbox)

祝你好运!