Vba 将会话从共享邮箱移动到共享邮箱中的文件夹中

Vba 将会话从共享邮箱移动到共享邮箱中的文件夹中,vba,email,outlook,Vba,Email,Outlook,我们有一个带有子文件夹(TestIn)的共享邮箱(test@) 我想在共享邮箱的收件箱中选择一封电子邮件,并将其移动到“TestIn”文件夹 此邮件应作为对话移动,而不仅仅是单个邮件,此标题(对话)下的所有邮件都应放入此文件夹 我们正在Outlook中使用Office365和Microsoft Exchange帐户 我成功地将所选邮件(或对话)从共享邮箱移动到个人邮箱(而不是共享邮箱)的子文件夹中 代码如下: Sub SetAlwaysMoveToFolderMAPI() Dim sharede

我们有一个带有子文件夹(TestIn)的共享邮箱(test@)

我想在共享邮箱的收件箱中选择一封电子邮件,并将其移动到“TestIn”文件夹

此邮件应作为对话移动,而不仅仅是单个邮件,此标题(对话)下的所有邮件都应放入此文件夹

我们正在Outlook中使用Office365和Microsoft Exchange帐户

我成功地将所选邮件(或对话)从共享邮箱移动到个人邮箱(而不是共享邮箱)的子文件夹中

代码如下:

Sub SetAlwaysMoveToFolderMAPI()
Dim sharedemail As Outlook.Recipient
Dim myOlApp As New Outlook.Application
Dim myNameSpace As Outlook.NameSpace
Dim myInbox As Outlook.MAPIFolder
Dim myDestFolder As Outlook.MAPIFolder
Dim myMail As Outlook.MailItem
Dim myStore As Outlook.Store
Dim oConv As Outlook.Conversation

Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set sharedemail = myNameSpace.CreateRecipient("Postfach Test")
Set myInbox = myNameSpace.GetSharedDefaultFolder(sharedemail, olFolderInbox)
Set myDestFolder = Application.Session.GetDefaultFolder(olFolderInbox).Folders("TestIn")
Set myMail = ActiveExplorer.Selection(1)
Set myStore = myDestFolder.Store

If myStore.IsConversationEnabled Then
 Set myConv = myMail.GetConversation
 If Not (myConv Is Nothing) Then
  myConv.SetAlwaysMoveToFolder myDestFolder, myDestFolder.Store
 End If
End If
End Sub
如果我替换

Set myDestFolder = Application.Session.GetDefaultFolder(olFolderInbox).Folders("TestIn")

它没有移动任何东西,我也没有收到任何错误消息

如果我调试,我会看到脚本从启用myStore.IsConversationEnabled的
跳到最后


对我来说,这意味着,如果myStore.IsConversationEnabled,那么
就是问题所在,但我找不到任何相关信息。

目前不可能

问题出在共享邮箱的“存储”中。其中“ConversationView”不可用,这导致“SetAlwaysMoveToFolder”出现问题,因为我没有移动“conversation”对象\


我希望Microsoft能尽快实现这一功能。

谢谢Om3r,但我希望对话保存在共享邮箱的文件夹中,而不是个人邮箱中。我已经得到了移动到个人文件夹的解决方案,但我需要将其移动到共享邮箱中的文件夹中。对于这件事,我没有得到任何解决办法我还尝试将您的“移动”更改为共享文件夹,但未成功。您是否尝试使用收件人电子邮件地址?你的意思是,我应该把“Postfach测试”改为“Postfach测试”test@domain.com"? 这不管用。我只是没有出错,但对话仍然没有移动。只有在调试模式下,我才会收到一条错误消息:“运行时错误”-2147024809(80070057)'抱歉,出现了问题。您可能想再试一次。'我没有发现关于此错误消息的任何有用信息,也没有找到解决我问题的方法。
Set myDestFolder = myNameSpace.GetSharedDefaultFolder(sharedemail, olFolderInbox).Folders("TestIn")