2017-12-27 51 views
0

すべての迷惑メールをVBAコードで受信トレイに移動しようとしています。残念ながら、私は、この行の「424のオブジェクト必要」というエラーが出ます:VBA:メールを迷惑メールから受信トレイに移動

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 

誰かが私の問題の答えをお持ちですか?

ありがとうございます。

答えて

0

括弧は、VBAで奇妙です。あなたが戻り値を期待していないオブジェクトから関数を呼び出すときは、かっこを残しておきます。

Item.Move olFLD 

また、括弧を使用しないときとするとき、あなたが持つ関数を前置きすることができますするような混乱を避けるためにCall

Call Item.Move(olFLD) 

もっと読む:これは確かだったお返事を What are the rules governing usage of brackets in VBA function calls?

+0

これは私のために働いた、ありがとう! – user3341275

+0

うれしい私は助けることができます。 –