Hallo,
ich mochte bei eingehenden Mails eines bestimmten Absenders den Betreff ändern. Dazu habe ich ein Makro geschrieben. Das funktioniert auch, solange die Mails nicht von einer Regeln in einen Sub-Folder verschoben werden. Ist die Verschiebe-Regel aktiv, wird der Betreff nicht mehr geändert.
Mir scheint, das Mail ist nach dem verschieben nicht mehr im Zugriff.
Der Befehl "mail.Save" bringt einen Fehler wenn die Regel aktiv ist. Das Makro funktioniert mit deaktivierter Regel ohne diesen Befehl.
hier der wesentliche Programmaufbau:
Sub Intialize_Handler()
Set outApp = Outlook.Application
End Sub
Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
Dim mail As Object
Dim intInitial As Integer
Dim intFinal As Integer
Dim strEntryID As String
Dim intLength As Integer
'Email-ID ermitteln
intInitial = 1
intLength = Len(EntryIDCollection)
intFinal = InStr(intInitial, EntryIDCollection, ",")
Do While intFinal <> 0
strEntryID = Strings.Mid(EntryIDCollection, intInitial, (intFinal - intInitial))
Set mail = Application.Session.GetItemFromID(strEntryID)
intInitial = intFinal + 1
intFinal = InStr(intInitial, EntryIDCollection, ",")
Loop
strEntryID = Strings.Mid(EntryIDCollection, intInitial, (intLength - intInitial) + 1)
Set mail = Application.Session.GetItemFromID(strEntryID)
If mail.Class = olMail Then
If mail.SenderEmailAddress = "xx.xx@xx.de" Then
mail.Subject = mail.Attachments.Item(1).FileName 'Betreff = erster Dateianhang
' mail.Save > bringt Fehler wenn die Regel aktiv ist.
End If
End If
'aufräumen
Set mail = Nothing
End Sub
|