VBA:并非所有Outlook电子邮件都显示出来

时间:2014-11-04 09:27:40

标签: vba outlook directory

我写了一小段代码,用于检查电子邮件的附加收件箱(除了我在Outlook中的主要地址)。

当在PC上使用代码时,问题出现了,其中只有附加的收件箱被添加到outlook(作为主要收件箱)。显然,代码无法检索所有电子邮件,只能查找较旧的电子邮件。这很尴尬,因为似乎找到了子文件夹甚至电子邮件的路径,但不是新的。我可以在Outlook中看到它们没有问题。

有没有人知道,为什么会这样?正如我所说,相同的代码在带有Outlook安装的PC上没有问题,另一个主要收件箱和收件箱需要另外检查。

这是我用来访问Outlook和电子邮件的代码:

Dim objFolder As Outlook.Folder
Dim objOL As Outlook.Application
Set objOL = CreateObject("Outlook.Application")    
Set objFolder = objOL.GetNamespace("MAPI").Folders.Item("test@test.de").Folders.Item("Posteingang").Folders.Item("Subfolder-Name").Folders.Item("Subfolder-Name-2")
With objFolder.Items(1)
...

2 个答案:

答案 0 :(得分:1)

我遇到了同样的问题:就我而言,电子邮件是通过Microsoft Exchange交换的,但没有下载到本地Outlook。

如果您可以刷新外观,则应该可以解决问题

答案 1 :(得分:0)

为什么总是检索Items集合中的第一项?你不想循环使用这些项目吗?

set objItems = objFolder.Items
objItems.Sort "[ReceivedTime]"
'now objItems is sorted