Outlook产品版本: 16.0.1073020348
所以我做了一个脚本来读取电子邮件,并将它们插入到数据库中。
问题:脚本当前正在从我的收件箱读取(红色标志),而不是从共享邮箱读取(蓝色标志)
所需的解决方案:检查共享邮箱(蓝色标记)

目前我的代码看起来像这样:
Set objOutlook = CreateObject("Outlook.Application")
Set objNamespace = objOutlook.GetNamespace("MAPI")
'PROBLEM HERE I GUESS
Set objFolder = objNamespace.GetDefaultFolder(6) 'Inbox
Set colItems = objFolder.Items
Set colFilteredItems = colItems.Restrict("[Unread]=true")
Set colFilteredItems = colFilteredItems.Restrict("[Subject] = SUBJECT")
For k = colFilteredItems.Count to 1 step -1
set objMessage = colFilteredItems.Item(k)
'....
next感谢您的任何帮助
尝试了@josefZ建议的方法,但在第一次尝试时继续挣扎(最后一行失败):
Set myRecipient = objNamespace.CreateRecipient("mailbox@mail.com")
myRecipient.Resolve
Set objFolder = objNamespace.GetSharedDefaultFolder(myRecipient,olFolderInbox).Folders("Bandeja de Entrada")

发布于 2020-02-16 13:34:40
您可以使用GetSharedDefaultFolder,或者,由于代理存储已在配置文件中打开,因此可以从Namespace.Stores集合中检索代理邮箱,并使用Store.GetDefaultFolder而不是Namespace.GetDefaultFolder。
发布于 2020-02-14 19:27:29
就像这样工作:
Set myRecipient = objNamespace.CreateRecipient("mailbox@mail.com")
myRecipient.Resolve
Set objFolder = objNamespace.GetSharedDefaultFolder(myRecipient,6) 'inboxhttps://stackoverflow.com/questions/60223612
复制相似问题