sariel
Goto Top

Outlook 2007 Bei start von outlook alle vorher geöffneten emails automatisch öffnen

Hallo ich habe schon rumgegoogelt aber leider nichts gefunden daher meien frage:

Wenn ich Emails in Outlook geöffnet habe (zum lesen) und vor dem schliesen von outlook die Emails nicht schließe sollen diese Emails beim nächsten öffnen von outlook automatisch wieder geöffnet werden.

gibts dafür eien funktion oder möglichkeit?

Danke im Vorraus

Content-ID: 302568

Url: https://administrator.de/forum/outlook-2007-bei-start-von-outlook-alle-vorher-geoeffneten-emails-automatisch-oeffnen-302568.html

Ausgedruckt am: 10.04.2025 um 15:04 Uhr

KMUlife
KMUlife 22.04.2016 um 10:29:04 Uhr
Goto Top
Hallo Sariel

So viel ich weiss gibts diese Funktion nicht. (Auch nicht in neuere Outlook-Versionen)

Es gibt ja nichtmal folgende Funktion:
http://www.office2010-blog.de/de/start/word/schnellzugriff-auf-zuletzt- ...
Welche in anderen Office-Programmen vorhanden ist.

Ich denke das liegt daran, dass dies ein Mailprogramm ist und grundsätzlich mit den neusten Mails gearbeitet wird und nicht mit vergangenen Mails.

Grüsse
KMUlife
114757
Lösung 114757 22.04.2016 um 13:00:05 Uhr
Goto Top
Moin.
Könnte man mit VBA in Outlook nachrüsten:
Dim WithEvents objExplorer As Explorer

Private Sub objExplorer_Activate()
    SaveSession
End Sub

Private Sub Application_Startup()
    Set objExplorer = ActiveExplorer
    RestoreSession
End Sub

Sub SaveSession()
    On Error Resume Next
    Dim ins As Inspector, strPath As String, fso As Object, f As Object
    strPath = Environ("Temp") & "\last_session_state.txt"  
    Set fso = CreateObject("Scripting.FileSystemObject")  
    If Application.Inspectors.Count > 0 Then
        Set f = fso.OpenTextFile(strPath, 2, True)
        For Each ins In Inspectors
            f.WriteLine (ins.CurrentItem.EntryID)
        Next
        f.Close
    Else
        fso.OpenTextFile(strPath, 2, True).Write ""  
    End If
    Set fso = Nothing
End Sub
Sub RestoreSession()
    On Error Resume Next
    Dim fso As Object, strPath As String, itm As Object
    Set fso = CreateObject("Scripting.FileSystemObject")  
    strPath = Environ("Temp") & "\last_session_state.txt"  
    
    If fso.FileExists(strPath) Then
        For Each strEntryID In Split(fso.OpenTextFile(strPath, 1).ReadAll, vbNewLine)
            If strEntryID <> "" Then  
                Set itm = Application.Session.GetItemFromID(strEntryID)
                If Not itm Is Nothing Then itm.Display
            End If
        Next
    End If
    Set fso = Nothing
End Sub
Gruß jodel32
sariel
sariel 26.04.2016 um 10:12:25 Uhr
Goto Top
Danke für das Script Jodel,

ich habe es versucht einzubinden aber eventuell bin ich zu blöd für face-smile ich habe es unter VBA als Modul eingespeichert habe auch die Schaltflächen zum speichern und laden in meine leiste gezogen aber es bleibt ohne Funktion muss ich da noch irgendwas für einstellen oder unter einem bestimmten Punkt speichern?
114757
Lösung 114757 26.04.2016 aktualisiert um 10:15:48 Uhr
Goto Top
Zitat von @sariel:
ich habe es versucht einzubinden aber eventuell bin ich zu blöd für face-smile ich habe es unter VBA als Modul eingespeichert
Falsch, in dem Skript sind Events enthalten die nur im ThisOutlookSession oder DieseOutlookSitzung funktionieren.
Private Sub Application_Startup()
Also dort einfügen speichern, Makros im Sicherheitscenter von Outlook aktivieren, und dann zwingend einen Neustart von Outlook machen!!
sariel
sariel 26.04.2016 um 16:51:56 Uhr
Goto Top
Super Funktioniert da freut sich mein chef morgen face-smile
114757
114757 26.04.2016 aktualisiert um 16:55:13 Uhr
Goto Top
Zitat von @sariel:
Super Funktioniert da freut sich mein chef morgen face-smile
Na dann bitte nicht vergessen, "powered by @administrator.de" drüber zu schreiben sonst gibt's Gehaltsabzug! face-wink