Es ist einfach super ärgerlich und kostet viel Zeit, wenn man eine Mail versendet und den Anhang vergessen hat.
Zum einen denkt der Empfänger dann wohl auch, dass der Absender etwas unkonzentriert war, oder etwas hektisch bei der Bearbeitung seiner Mails ist.
Egal, as der Andere auch denkt, wenn er zumindest eine Rückmeldung über den fehlenden Anhang gibt, kostet es halt eben nur noch mehr Zeit, die Mail noch einmal – und dann auch mit dem Anhang zu versenden. Das kann man auch etwas einfacher haben und Outlook gleich anweisen, eine Warnung auszugeben, wenn eine Anlage in der Mail fehlt.
Wie man so etwas einrichtet?, Das habe ich in meinem Video bereits demonstriert und hier sind die paar Code-Zeilen, die Ihr für das VBA-Projekt in Outlook benötigt.
Schritt1 – das neue Modul: Wichtig, der Pfad zu Kontroll-Datei sollte auch zu eurer Umgebung passen.
Public Function HasAttHint( _ EMailText As String) As Boolean Const ATTHINTS_FILE As String = _ "C:\Outlook\Anlagenhinweise.txt" Dim intFilenum As Integer Dim strAttHint As String On Error GoTo HAH_End HasAttHint = False intFilenum = FreeFile Open ATTHINTS_FILE For Input As #intFilenum Do While Not EOF(intFilenum) Line Input #intFilenum, strAttHint If InStr(1, EMailText, _ strAttHint, vbTextCompare) > 0 Then HasAttHint = True Close #intFilenum Exit Function End If Loop HAH_End: Close #intFilenum End Function
Das ist der zweite Codeschnipsel für die Funktion “ThisOutlookSession”
Anschließend Doppelklick auf den Eintrag “ThisOutlookSession” und den Codeschnipsel einfügen:
Private Sub Application_ItemSend( _ ByVal Item As Object, _ Cancel As Boolean) If HasAttHint(Item.Body) Then If Item.Attachments.Count = 0 Then If MsgBox( _ Prompt:="Nachricht enthält keine " & _ "Anlagen!" & String(2, vbCrLf) & _ "Wollen Sie sie trotzdem senden?", _ Buttons:=vbQuestion + vbYesNo, _ Title:="Anhang vergessen?") = vbNo Then Cancel = True End If End If End If End Sub