drvegapunk
Goto Top

Outlook Mails nach x Tagen löschen

Hallo zusammen,

ich habe eine kurze Frage zum automatischen Löschen von E-Mails beim Autoarchiv. Ich habe beide Optionen ausprobiert, jedoch ohne Erfolg. Die Mails werden nicht gelöscht. Hat vielleicht jemand eine Idee?

1.

2

Content-ID: 9976079751

Url: https://administrator.de/contentid/9976079751

Ausgedruckt am: 21.11.2024 um 19:11 Uhr

8030021182
8030021182 07.12.2023 aktualisiert um 15:25:26 Uhr
Goto Top
IMAP Konto? Wenn ja ist das normal, damit hat die Archivierung noch nie funktioniert. Nimmst du dann stattdessen ein Makro oder MailStore Home

Oder bei Exchange gleich die Aufbewahrungsrichtlinien (RetentionPolicies) benutzen.
https://learn.microsoft.com/en-us/exchange/policy-and-compliance/mrm/cre ...
https://learn.microsoft.com/en-us/exchange/policy-and-compliance/mrm/app ...

Gruß Katrin
extructor
extructor 08.12.2023 um 09:44:35 Uhr
Goto Top
Du könntest auch ggf. alle alten Elemente in einen Ordner verschieben und diesen dann entweder alle X Tage händisch löschen oder eine Aufgabenplanung machen, welche den Ordner automatisch nach X Tagen bereinigt.
8030021182
8030021182 08.12.2023 aktualisiert um 10:51:10 Uhr
Goto Top
Dann kann man ja gleich einen benutzerdefinierten Suchordner (mit Kriterium älter als x Tage) in Outlook anlegen den man dann leeren lässt.
drvegapunk
drvegapunk 08.12.2023 um 12:00:11 Uhr
Goto Top
Das mit den benutzerdefinierten Suchordner ist glaub die einfachste Variante, aber ich versuch mich mal an den Makros einzuarbeiten.
8030021182
8030021182 08.12.2023 aktualisiert um 14:08:27 Uhr
Goto Top
Zitat von @drvegapunk:

Das mit den benutzerdefinierten Suchordner ist glaub die einfachste Variante, aber ich versuch mich mal an den Makros einzuarbeiten.

Makro ist schnell getippt, hier für den aktuell Markierten Ordner, Mails älter als 4 Tage entsorgen:
Sub DeleteOldMails()
    dim mail as object, garbage as new Collection, limit as Date, mailcount as Long
    limit = DateAdd("d",-4,Date)  
    for each mail in ActiveExplorer.CurrentFolder.Items
        if mail.ReceivedDate < limit then
            garbage.add mail
        End if
    Next
    mailcount = garbage.Count
    if mailcount > 0 then
        for each itm in garbage
            itm.Delete
        Next
        msgbox  "Es wurden " & mailcount & " Mail(s) gelöscht", vbInformation  
    else
        msgbox  "Keine der Mails entspricht den Kriterien.", vbInformation  
    End if
End Sub
Will man das für einen festgelegten Ordner tun geht das wenn man Zeile 4 entsprechend modifiziert wie hier für die Inbox:
for each mail in Application.Session.Stores("user@domain.de").GetDefaultFolder(olFolderInbox).Items  
oder einen Unterordner der Inbox
for each mail in Application.Session.Stores("user@domain.de").GetDefaultFolder(olFolderInbox).Folders("Subfolder").Items  
usw.

Referenz wie immer hier nachzulesen:
Object model (Outlook)

Good Luck.