OLK-Itemcount

Inhaltsverzeichnis
  1. Weiterentwicklung
  2. Weitere Links

Mit dem Skript MBReport habe ich ein schon ein Skript um als Administrator etwas mehr Einblick in die Postfächer zu bekommen. Aber als Anwender habe ich nur die einfache Funktion, die Ordnergröße anzeigen zu lassen.

Outlook Ordnergröße

Allerdings ist die Liste bei großen Ordnerstrukturen nur sehr schlecht nutzbar und allein die Größe ist nicht wirklich hilfreich. Das folgende VBA-Makro kann jeder Anwender selbst in seinen Outlook VBA-Editor (ALT-F11, Siehe  Outlook VBA) einbinden und als Makro ausführen lassen. Zuerst fordert es vom Benutzer die Auswahl eines Ordners an, (PickFolder-Methode) um dann ausgehend von diesem Ordner für alle unterordner die Anzahl der Elemente einzusammeln. Sie können damit auch problemlos öffentliche Ordner oder PST-Dateien verarbeiten.

Dim Summary
 
Sub itemcount()
    Dim objfolder As MAPIFolder
    
    Set objfolder = Outlook.GetNamespace("MAPI").PickFolder
    Summary = "Ordnerpfad;Anzahl;Anzahl mit unterordnern" & vbCrLf
    Debug.Print "total:" & FolderRecursive(objfolder)
    
    Dim postitem As postitem
    Set postitem = Outlook.CreateItem(olPostItem)
    postitem.Subject = "Mailbox Statistik " & Now()
    postitem.Body = Summary
    postitem.Save
    MsgBox "Ihre Mailboxstatistik finden Sie im Posteingang"
End Sub

Function FolderRecursive(folder As MAPIFolder)
    Dim total
    Dim subfolder As MAPIFolder
    total = folder.Items.Count für Each subfolder In folder.Folders
        total = total + FolderRecursive(subfolder)
    Next
    Debug.Print folder.FolderPath & ";" & folder.Items.Count & ";" & total
    Summary = Summary + folder.FolderPath & ";" & folder.Items.Count & ";" & total & vbCrLf
    FolderRecursive = total
End Function
 

Leider gibt es im Outlook kein direktes Property für die Größe eines Ordners, so dass man für die Größe jedes einzelne Element aufaddieren müsste. Das dauert länger und verschlüsselte Mails müssen besonders behandelt werden. Hier kann ich sicher später noch ein Update nachschieben.

Das Ergebnis der Sammelaktion landet am Ende als Posting im Posteingang des Benutzers. 

Der Benutzer kann natürlich sehr einfach diese Daten in Excel übernehmen und so weitere Details seines Postfachs ermitteln.

Weiterentwicklung

Das Skript in der Form diente mir z.B.: bei der Suche nach Ordnern mit sehr vielen Elementen. Aber sowohl die fehlende Größe der Ordner als auch die Ausgabe der Daten würde ich gerne noch verbessern. Aber das ist dann wieder Arbeit für lange Hotelabende.

Weitere Links