移动文件夹,而不是item.move

时间:2015-04-30 11:48:10

标签: vba outlook outlook-vba directory

我正在尝试在我的邮箱中添加一些订单,我已经设置了几个宏来根据非常具体的偏好订购电子邮件,前景规则无法管理(我认为......)

我最终得到了几个文件夹,里面有几个对话。 我只想将带有旧对话的文件夹移动到另一个文件夹。

我正在尝试移动包含所有内容的文件夹,包括子文件夹和电子邮件......

我可以为此编写递归函数,但我只是想确定没有其他编码选项。

Folder.Move(ColdCaseFolder)

无效......

我已经习惯了VBA宏,但我在MSDN上找不到关于移动文件夹的任何文章,只有项目......

1 个答案:

答案 0 :(得分:1)

Outlook对象模型中的Folder类不提供Move方法。您需要使用MoveTo方法。例如:

Sub MoveFolder() 
  Dim myNameSpace As Outlook.NameSpace 
  Dim myFolder As Outlook.Folder 
  Dim myNewFolder As Outlook.Folder 

  Set myNameSpace = Application.GetNamespace("MAPI") 
  Set myFolder = myNameSpace.GetDefaultFolder(olFolderContacts) 
  Set myNewFolder = myFolder.Folders.Add("My Test Contacts") 
  myNewFolder.MoveTo myNameSpace.GetDefaultFolder(olFolderInbox) 
End Sub