如何在Outlook VBA中的共享邮箱收发邮件中提取电子邮件?

时间:2020-07-24 09:15:15

标签: vba outlook

我当前的Outlook应用程序中有20个共享邮箱。我尝试通过使用ItemAdd和ItemSend提取和显示电子邮件来获取当前的Outlook配置文件,这是我个人(nvreddy@domain.com)并成功的。但是当我尝试使用共享邮箱时,我失败了,也不知道从哪里开始提取共享邮箱的电子邮件接收和发送。

如何确保Outlook VBA识别并显示是否有新电子邮件接收到任何共享邮箱并从任何共享邮箱发送。我希望我在这里已经成为我的新蜜蜂了,尽我所能。

谢谢。

1 个答案:

答案 0 :(得分:0)

您需要使用NameSpace.GetSharedDefaultFolder方法来获取一个Folder对象,该对象代表指定用户的指定默认文件夹。

Sub ResolveName() 
 Dim myNamespace As Outlook.NameSpace 
 Dim myRecipient As Outlook.Recipient 
 Dim CalendarFolder As Outlook.Folder 
 
 Set myNamespace = Application.GetNamespace("MAPI") 
 
 Set myRecipient = myNamespace.CreateRecipient("Eugene Astafiev")
 myRecipient.Resolve 
 If myRecipient.Resolved Then 
 Call ShowCalendar(myNamespace, myRecipient)
 End If 
End Sub 
 
Sub ShowCalendar(myNamespace, myRecipient) 
 Dim CalendarFolder As Outlook.Folder 
 
 Set CalendarFolder = myNamespace.GetSharedDefaultFolder(myRecipient, olFolderCalendar) 
 CalendarFolder.Display 
End Sub

一旦检索到Folder类的实例,就可以添加ItemAdd事件处理程序。

仅对您个人资料中配置的帐户触发ItemSend事件。