StartDownloadsServiceBeispieleWorkshopsKontakt DeutschEnglish
 
Beispiele
Allgemein
Outlook®
 
Awarded by
Microsoft since 2005:
mvp logo
VBOffice Info
Besucher1826701
Aufrufe6852835
Links
Impressum
Datenschutz
Kontakt
Sonstiges: Nächste Mail öffnen, gelesene löschen
Autor: Michael BauerHomepage
Datum: 08.01.2007Zugriffe: 21024
  
Beschreibung

Wenn Sie eine E-Mail geöffnet haben, können Sie über zwei Schaltflächen zur nächsten oder vorherigen Mail blättern. Wer nun die bereits gelesene Mail gleich löschen möchte, hat es nicht leicht: Entweder Sie wechseln in die Ordneransicht, markieren das vorherige, gelesene Element nochmal und löschen es dann oder Sie löschen die gelesene Mail, solange sie noch geöffnet ist, d.h. vor dem Blättern zur nächsten. Dann aber schlie?t sich das Mailfenster und Sie müssen erst in der Ordneransicht die nächste markieren und explizit öffnen.

Dieses Code-Beispiel demonstriert, wie Sie mit nur einem Mausklick das nächste Element öffnen und das gerade gelesene löschen.

In Outlook 2000 funktioniert das Beispiel leider nicht, wenn Word der Maileditor ist, weil dann das NewInspector-Ereignis nicht gefeuert wird.

Sie können in einer geöffneten E-Mail per Hand über 'Symbolleisten anpassen' eine Schaltfläche erstellen, welche die Funktion 'NextItemAndDeleteCurrent' aufruft. Alternativ können Sie natürlich auch eine neue Symbolleiste mit Schaltfläche per Code erzeugen.

' <DieseOutlookSitzung>
Option Explicit

Private WithEvents m_Inspectors As Outlook.Inspectors
Private WithEvents m_Inspector As Outlook.Inspector
Private WithEvents m_NextButton As Office.CommandBarButton

Private Sub Application_Startup()
  Set m_Inspectors = Application.Inspectors
End Sub

Private Sub m_Inspector_Close()
  Set m_NextButton = Nothing
  Set m_Inspector = Nothing
End Sub

Private Sub m_Inspectors_NewInspector(ByVal Inspector As Outlook.Inspector)
  Dim obj As Object

  If Len(Inspector.CurrentItem.EntryID) Then
    Set m_Inspector = Inspector
    Set obj = Inspector.CommandBars.FindControl(, 360)
    If TypeOf obj Is Office.CommandBarPopup Then
      Set m_NextButton = obj.Controls(1)
    Else
      Set m_NextButton = obj
    End If
  End If
End Sub

Public Sub NextItemAndDeleteCurrent()
  Dim CurrItem As Object

  Set CurrItem = Application.ActiveInspector.CurrentItem
  If Len(CurrItem.EntryID) Then
    m_NextButton.Execute
    CurrItem.Delete
  End If
End Sub
' </DieseOutlookSitzung>
 
 

ReplyAll warnt Sie, bevor Sie unbeabsichtigt allen Empfängern einer E-Mail antworten oder wenn Sie ein vertraulicher BCC-Empfänger der E-Mail ... [weiter]

 

Blitzschneller Zugriff auf die Hauptkategorienliste, gemeinsame Kategorien im Netzwerk, eine Erinnerungsfunktion ... [weiter]

 

SAM legt automatisch Absender, Signatur und Speicherort für gesendete Mails fest, z.B. anhand der ... [weiter]

 

OLKeeper verhindert zuverlässig, dass Mitarbeiter Outlook schließen und dadurch Termine oder E-Mails ... [weiter]

So entgeht Ihnen kein Auftrag mehr:
Telefonservice und Sekretariatsservice