VBA:将邮件从垃圾邮件移动到收件箱

问题描述 投票:0回答:2

我正试图通过VBA代码将我的所有垃圾邮件移到我的收件箱中。不幸的是,我在这一行得到了'424对象所需'的错误:

    Item.Move (olFLD)

当我尝试将邮件从收件箱移动到另一个文件夹时,代码工作,但当我尝试将邮件从垃圾邮件移动到收件箱时,它无法正常工作。

Dim OlNS As Outlook.NameSpace
Dim olFLD As Outlook.Folder
Dim olJunk As Outlook.Folder

Sub Junk()

Set OlNS = Outlook.GetNamespace("MAPI")
Set olFLD = OlNS.GetDefaultFolder(olFolderInbox)
Set olJunk = OlNS.GetDefaultFolder(olFolderJunk)

While olJunk.Items.Count <> 0

For Each Item In olJunk.Items

Item.Move (olFLD)

Next

Wend

End Sub

有没有人对我的问题有答案?

提前致谢。

vba email move
2个回答
1
投票

在vba中,括号很奇怪。当您从一个您不期望返回值的对象调用函数时,您将不使用括号。

Item.Move olFLD

或者,为避免混淆何时何时不使用括号,您可以使用Call作为前言功能

Call Item.Move(olFLD)

阅读更多:What are the rules governing usage of brackets in VBA function calls?


© www.soinside.com 2019 - 2024. All rights reserved.