Email per vba in anderen Ordner verschieben?

26/11/2008 - 13:53 von Martin Bichler | Report spam
Hallo,

ich möchte per vba die Emails eines Öffentlichen Ordner´s in einen anderen
ÖO verschieben. Eigentlich sollte das ja kein Problem sein.

Dim myolApp As Outlook.Application
Set myolApp = CreateObject("Outlook.Application")
Set mynamespace = myolApp.GetNamespace("MAPI")
Set myFolder = mynamespace.PickFolder
Set zielfolder = mynamespace.PickFolder
Set myitems = myFolder.Items
For Each nachricht In myitems
nachricht.Move zielfolder
Next


Leider wird aber immer nur die Hàlfte der Emails verschoben. Also, wenn 8
Stück drin sind, werden 4 verschoben, wenn 6 drin sind, 3 usw.

Führe ich vor der for next Schleife diesen Befehl aus:
MsgBox myitems.Count
wird mir aber die richtige Anzahln von Emails angezeigt.

Was ist da los?
 

Lesen sie die antworten

#1 Peter Marchert
26/11/2008 - 14:26 | Warnen spam
On 26 Nov., 13:53, "Martin Bichler" wrote:
Hallo,



Hallo Martin,

ich möchte per vba die Emails eines Öffentlichen OrdnerŽs in einen anderen
ÖO verschieben. Eigentlich sollte das ja kein Problem sein.

    Dim myolApp As Outlook.Application
    Set myolApp = CreateObject("Outlook.Application")
    Set mynamespace = myolApp.GetNamespace("MAPI")
    Set myFolder = mynamespace.PickFolder
    Set zielfolder = mynamespace.PickFolder
    Set myitems = myFolder.Items
    For Each nachricht In myitems
        nachricht.Move zielfolder
    Next

Leider wird aber immer nur die Hàlfte der Emails verschoben. Also, wenn 8
Stück drin sind, werden 4 verschoben, wenn 6 drin sind, 3 usw.

Führe ich vor der for next Schleife diesen Befehl aus:
MsgBox myitems.Count
wird mir aber die richtige Anzahln von Emails angezeigt.

Was ist da los?



Die Schleife muss rückwàrts laufen (Step -1), siehe
http://www.vboffice.net/sample.html...=showitem,
da sich myItems bei jedem Verschieben àndert, in dem von Dir
geposteten Code jedoch immer gleich bleibt.

Gruß
Peter

Infos, Workshops & Software für
Outlook®: www.outlook-stuff.com

Ähnliche fragen