Emails im ausgewählten Ordner bis zu einem bestimmten Zeitpunkt komplett löschen

  • Outlook

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von MaxK10.

    Emails im ausgewählten Ordner bis zu einem bestimmten Zeitpunkt komplett löschen

    Hallöchen!



    ich habe folgendes Problem:
    ich muss in einem Postfach alle Mails, die früher als der 1.1.2013 empfangen wurden, löschen.

    Bis jetzt habe ich mal:

    Visual Basic-Quellcode

    1. Dim Ordner As Outlook.Folder
    2. Dim Objekt As Outlook.MailItem
    3. Dim Datum As Date
    4. Datum = "01.01.2013"
    5. On Error Resume Next
    6. Set Ordner = Application.GetNamespace("MAPI").Folders("Testordner")
    7. For Each Objekt In Ordner.Items
    8. With Objekt
    9. If .ReceivedTime() < Datum Then
    10. .Delete
    11. End If
    12. End With
    13. Next Objekt




    Das Problem ist, dass er das Postfach Testordner nicht findet und ich weiß nicht genau, wie ich den "Pfad" des Postfaches angeben kann.
    Danke für deine Hilfe, hat aber i.wie nicht funktioniert...

    habs jetzt aber mit

    Visual Basic-Quellcode

    1. Set Ordner = Application.Session.PickFolder


    gelöst und wähle dann halt eben immer den entsprechenden Ordner aus.

    jetzt hab ich nur noch das Problem das ber die Mails in den Ordner "Gelöschte Objekte" legt.

    Sie müssen aber direkt komplett gelöscht werden.

    Oder muss ich dann wieder in den Ordner "Gelöschte Objekte" und dort alle löschen?

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „MaxK10“ ()

    OK ich habs jetzt.

    Visual Basic-Quellcode

    1. Public Sub loeschen()
    2. Dim Ordner As Outlook.Folder
    3. Dim Ordnerloeschen As Outlook.Folder
    4. Dim Objekt As Outlook.MailItem
    5. Dim Objektloeschen As Outlook.MailItem
    6. Dim Datum As Date
    7. Datum = "1.1.2013"
    8. On Error Resume Next
    9. Set Ordner = Application.Session.PickFolder
    10. For Each Objekt In Ordner.Items
    11. With Objekt
    12. If .ReceivedTime() < Datum Then
    13. .Delete
    14. End If
    15. End With
    16. Next Objekt
    17. Set Ordnerloeschen = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderDeletedItems)
    18. For Each Objektloeschen In Ordnerloeschen.Items
    19. With Objektloeschen
    20. .Delete
    21. End With
    22. Next Objektloeschen
    23. End Sub




    gehe also nachdem alle Mails gelöscht wurden in den Papierkorb und lösche dort alles.