Outlook 2003 SP3 - Makro - AW oder WG im Betreff löschen lassen
Hallo,
Ich bekomme Emails mit unter anderem "AW: " und/oder "WG: " im Betreff, teilweise auch mehrfach im Betreff. Diese beiden Zusätze "AW: " und/oder "WG: " und andere würde ich gerne von einem Makro erkennen und entfernen lassen.
Leider muss ich sagen, dass ich nicht einmal weiß womit ich anfangen soll (bin Anfänger). Hab im Internet bisher nichts brauchbares gefunden
Das ganze würd ich in den unten angegebenen Code einpflegen wollen. Kann mir jemand auf die Sprünge helfen?
Gruß
TecAttack
Ich bekomme Emails mit unter anderem "AW: " und/oder "WG: " im Betreff, teilweise auch mehrfach im Betreff. Diese beiden Zusätze "AW: " und/oder "WG: " und andere würde ich gerne von einem Makro erkennen und entfernen lassen.
Leider muss ich sagen, dass ich nicht einmal weiß womit ich anfangen soll (bin Anfänger). Hab im Internet bisher nichts brauchbares gefunden
Das ganze würd ich in den unten angegebenen Code einpflegen wollen. Kann mir jemand auf die Sprünge helfen?
Gruß
TecAttack
Public Sub InsertDate()
'=====================================================================
' Fügt an den Anfang des Betreffs eines Elements das ErhaltenDatum & SenderName ein.
' 2008-11-21 - Version 1.0.0
'=====================================================================
Dim objItem As Object ' Aktuelles Element
Dim strDispSender As String
Dim i As Long
'---------------------------------------------------------------------
' Fehlerbehandlung wegen Set-Anweisungen ausschalten
'---------------------------------------------------------------------
On Error Resume Next
'---------------------------------------------------------------------
' Aktuell geöffnetes Element refernzieren
'---------------------------------------------------------------------
Set objItem = Outlook.ActiveInspector.CurrentItem
'---------------------------------------------------------------------
' Wenn kein Element geöffnet ist, dann markiertes verwenden
'---------------------------------------------------------------------
If objItem Is Nothing Then Set objItem = Outlook.ActiveExplorer.Selection(1)
'---------------------------------------------------------------------
' Auch nichts markiert?
'---------------------------------------------------------------------
If objItem Is Nothing Then GoTo ExitProc
'---------------------------------------------------------------------
' Nur das was vor dem Komma (soweit vorhanden) im SenderName
' enthalten ist übernehmen
'---------------------------------------------------------------------
i = InStr(1, objItem.SenderName, ",")
If (i > 0) Then
strDispSender = Left(objItem.SenderName, i - 1)
Else
strDispSender = objItem.SenderName
End If
'---------------------------------------------------------------------
' Erhalten Datum [yyyy-mm-dd] und obigen SenderName hinzufügen
'---------------------------------------------------------------------
' [alt] objItem.Subject = Format(Date, "yyyy-MM-dd") & " " & objItem.Subject
objItem.Subject = Format(objItem.ReceivedTime, "yyyy-MM-dd") & " " & strDispSender & " " & objItem.Subject
'---------------------------------------------------------------------
' Prüfung ob es sich um eine Email handelt oder nicht
'---------------------------------------------------------------------
If objItem.Class <> olMail Then GoTo ExitProc
'---------------------------------------------------------------------
' Änderung speichern
'---------------------------------------------------------------------
objItem.Save
ExitProc:
'---------------------------------------------------------------------
' Referenz auf Element löschen
'---------------------------------------------------------------------
Set objItem = Nothing
End Sub
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 137851
Url: https://administrator.de/contentid/137851
Ausgedruckt am: 23.11.2024 um 14:11 Uhr
5 Kommentare
Neuester Kommentar
Hallo TecAttack!
Wobei man den Entfernen-Vorgang etwas verkürzen könnte:
Durch die Option [vbTextCompare], wird nicht zwischen Groß/Kleinschreibung unterschieden
Gruß Dieter
Wobei man den Entfernen-Vorgang etwas verkürzen könnte:
Const FindText = "AW, WG, RE, TR, RES, FW, RV, FWD, R" 'Komma als Trennzeichen
Dim ReplaceText As Variant, i As Integer
ReplaceText = Split(FindText, ",") 'FindText in ein Array splitten
For i = 0 To UBound(ReplaceText) 'Alle Elemente plus Doppelpunkt und Leerzeichen entfernen
objItem.Subject = Replace(objItem.Subject, Trim(ReplaceText(i)) & ": ", "", , , vbTextCompare)
Next
Gruß Dieter