从outlook邮箱读取邮件
Read Emails from outlook mailbox
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")
像这样工作:
Set myRecipient = objNamespace.CreateRecipient("mailbox@mail.com")
myRecipient.Resolve
Set objFolder = objNamespace.GetSharedDefaultFolder(myRecipient,6) 'inbox
您可以使用 GetSharedDefaultFolder
,或者由于代理存储已在配置文件中打开,从 Namespace.Stores
集合中检索代理邮箱并使用 Store.GetDefaultFolder
而不是 Namespace.GetDefaultFolder
.
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")
像这样工作:
Set myRecipient = objNamespace.CreateRecipient("mailbox@mail.com")
myRecipient.Resolve
Set objFolder = objNamespace.GetSharedDefaultFolder(myRecipient,6) 'inbox
您可以使用 GetSharedDefaultFolder
,或者由于代理存储已在配置文件中打开,从 Namespace.Stores
集合中检索代理邮箱并使用 Store.GetDefaultFolder
而不是 Namespace.GetDefaultFolder
.