StartDownloadsServiceBeispieleWorkshopsKontakt DeutschEnglish
 
Beispiele
Allgemein
Outlook®
 
Awarded by
Microsoft since 2005:
mvp logo
VBOffice Info
Besucher1408878
Aufrufe5188448
Links
Impressum
Datenschutz
Kontakt
E-Mail: Mit Kategorien Aktionen auslösen
Autor: Michael BauerHomepage
Datum: 17.10.2008Zugriffe: 17243
  
Beschreibung

Kategorien eignen sich hervorragend, um festgelegte Aktionen auszulösen. Da beliebig viele Kategorien erstellt werden können, lassen sich damit auch beliebig viele Aktionen steuern.

Das erste Beispiel verschiebt eine Email in einen bestimmten Unterordner des Posteingangs, sobald eine ganz bestimmte Kategorie zugewiesen wird. Weitere Kategorien, die der Email auch zugewiesen sein können, werden ignoriert. Sie müssen nur zwei Variablen (in der Prozedur 'Mail_PropertyChange' gekennzeichnet mit 'Customize) anpassen: Bestimmen Sie die zu suchende Kategorie und den Namens des Unterordners.

Das zweite Beispiel verschiebt die Email in einen Unterordner des Posteingangs, der genauso heißt wie die zugewiesene Kategorie.

(Kopieren Sie den Code ins Modul "DieseOutlookSitzung". Die Prozedur "Mail_PropertyChange" darf nur einmal in das Modul kopiert werden, entweder Sample #1 für das erste Beispiel oder Sample #2.)

Private WithEvents Explorer As Outlook.Explorer
Private WithEvents Mail As Outlook.MailItem

Private Sub Application_Startup()
  Dim Ns As Outlook.NameSpace
  Set Ns = Application.GetNamespace("MAPI")
  Set Explorer = Application.ActiveExplorer
End Sub

Private Sub Explorer_SelectionChange()
  Dim obj As Object
  Dim Sel As Outlook.Selection

  Set Mail = Nothing
  Set Sel = Explorer.Selection

  If Sel.Count > 0 Then
    Set obj = Sel(1)
    If TypeOf obj Is Outlook.MailItem Then
      Set Mail = obj
    End If
  End If
End Sub

'Sample #1
Private Sub Mail_PropertyChange(ByVal Name As String)
  Dim Ns As Outlook.NameSpace
  Dim SubfolderName As String
  Dim Inbox As Outlook.MAPIFolder
  Dim Subfolder As Outlook.MAPIFolder
  Dim i&
  Dim Cats As String
  Dim arrCats() As String
  Dim FindCategory As String

  ' Customize
  FindCategory = " (Actionlist)"
  SubfolderName = "test"

  Set Ns = Application.GetNamespace("MAPI")
  Set Inbox = Ns.GetDefaultFolder(olFolderInbox)
  Set Subfolder = Inbox.Folders(SubfolderName)
  If Subfolder.EntryID = Mail.Parent.EntryID Then
    Exit Sub
  End If
  FindCategory = LCase$(FindCategory)

  If Name = "Categories" Then
    Cats = Mail.Categories
    If Len(Cats) = 0 Then Exit Sub
    Cats = Replace(Cats, ",", ";")
    arrCats = Split(Cats, ";")
    For i = 0 To UBound(arrCats)
      Cats = LCase$(arrCats(i))
      If Cats = FindCategory Then
        Mail.Move Subfolder
        Set Mail = Nothing
        Exit For
      End If
    Next
  End If
End Sub

'Sample #2
Private Sub Mail_PropertyChange(ByVal Name As String)
  Dim Ns As Outlook.NameSpace
  Dim Inbox As Outlook.MAPIFolder
  Dim Subfolder As Outlook.MAPIFolder
  Dim SubfolderName As String

  If Name = "Categories" Then
    Set Ns = Application.GetNamespace("MAPI")
    Set Inbox = Ns.GetDefaultFolder(olFolderInbox)
    SubfolderName = Mail.Categories
    If Len(SubfolderName) = 0 Then Exit Sub
    Set Subfolder = Inbox.Folders(SubfolderName)
    If Subfolder.EntryID <> Mail.Parent.EntryID Then
      Mail.Move Subfolder
      Set Mail = Nothing
    End If
  End If
End Sub
 
 

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