jjsn1988
Goto Top

Outlook 2013 wenn die email gelesen markiert ist dann soll sie in einen ordner verschoben werden

Hallo ihr Admins,
outlook 2013
wenn die email gelesen markiert ist dann soll sie in einen ordner verschoben werden
ist dies möglich?
Habe es mit den normalen Regeln versucht dort aber nicht die einstellung gefunden als gelesen markiert oder so.
Danke für eure Zeit und Ideen

Content-Key: 256738

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

Ausgedruckt am: 19.03.2024 um 04:03 Uhr

Mitglied: vossi31
vossi31 04.12.2014 um 18:12:25 Uhr
Goto Top
Moin,

mit Outlook 2010 geht es nicht über Regeln, wenn ich dies richtig deute.
Outlook 2010 - Mails nachdem sie gelesen wurden automatisch in Unterordner verschiben
Mit OL2013 vermutlich auch nicht.
Du könntest dir aber das Verschieben über die "Quicksteps", die Du auf eine Taste legst etwas vereinfachen.

Henning
Mitglied: colinardo
colinardo 04.12.2014 aktualisiert um 21:20:33 Uhr
Goto Top
Moin zusammen,
könnte man mit einem Makro erledigen:
(Im Beispiel werden Mails im Posteingang die als gelesen markiert wurden, automatisch in einen Unterorder des Posteingangs verschoben [lässt sich in Zeile 10 anpassen]). Der Code muss im VBA-Editor ALT+F11 in den Abschnitt ThisOutlookSession oder DieseOutlookSitzung kopiert werden. Zusätzlich muss natürlich die Ausführung von Makros im Sicherheitscenter von Outlook erlaubt werden.
Wichtig: Danach ist unbedingt ein Neustart von Outlook nötig.
'Wichtig: Diese Variablen müssen unbedingt am Anfang des Code-Fensters stehen, es darf keine andere Prozedur davor stehen!  
Dim WithEvents m_items As items
Dim WithEvents m_Inspector As Inspector
Dim folderTarget as Folder

Private Sub Application_Startup()
    'Ordner der überwacht werden soll  
    Set m_items = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Items  
    ' Ordner in den die Mails verschoben werden  
    Set folderTarget = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Folders("ZIELORDNERNAME")  
End Sub

Private Sub m_Inspector_Close()
    On Error Resume Next
    m_Inspector.CurrentItem.Move folderTarget
End Sub

Private Sub m_items_ItemChange(ByVal Item As Object)
    Dim mail As MailItem, objInsp As Inspector, found As Boolean

    If Item.CLASS = olMail Then
        Set mail = Item
        If Not mail.UnRead Then
            On Error Resume Next
            If Application.Inspectors.count > 0 Then
                For Each objInsp In Application.Inspectors
                    If objInsp.CurrentItem.EntryID = mail.EntryID Then
                        Set m_Inspector = objInsp
                        found = True
                        Exit For
                    End If
                Next
            End If
            If Not found Then
                mail.Move folderTarget
            End If
        End If
    End If
End Sub
Grüße Uwe

p.s. wurde nur grob getestet, Benutzung erfolgt auf eigene Gefahr, keine Funktionsgarantie unter allen Bedingungen.