I am the owner of the question. I chose @joeschwa's answer, but also want to display my code, which cancels the current message and creates a new one (you can change the recipients, message contents and something else):
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean) If Item.Class <> olMail Then Exit Sub Dim newEm As String Dim Rec As Recipient Dim myItem As Outlook.MailItem Dim myRecipient As Outlook.Recipient Set myItem = Application.CreateItem(olMailItem) myItem.Body = Item.Body myItem.HTMLBody = Item.HTMLBody myItem.Subject = Item.Subject & " RASEEL PLUGIN " Cancel = True For Each Rec In Item.Recipients If InStr(1, Rec.AddressEntry, "@example.com", vbTextCompare) Then newEm = " example@example.net " Else newEm = Rec.AddressEntry End If Set myRecipient = myItem.Recipients.Add(newEm) myRecipient.Type = Rec.Type Next myItem.Send End Sub
source share