How to remove [External:] from subjects coming in - Office 365

Copper Contributor

A rule was added on admin level, it breaks the conversation threads and creates a huge mess for anyone with a lot of email coming in.

If anyone got any tips on that front, that would be great!

14 Replies
In the past i tried this but it broke the conversations as well:

But i think it should be doable but i am not savy on code.
So i got the code edited and stored but i can not find the run script option in Run Wizard..

Having throuble activating running scripts. Edit: made it work by running it "on this computer" only then the script shows up as an alternative.

Hi @MatsNorway_ECOSTOR,

can you use another way to tag external messages - MS native method or this one?

The IvaSoft seems to deal with warning labels not the subject line? same for the MS Native Method. We have the warning directly into subject line and i wish to remove it while keeping the threat intact so they folder when you activate that feature in outlook.
The code i am trying to run as a script:

Const CLASS_NAME = "SendAndReceive"

Private WithEvents olkApp As Outlook.Application
Private bolSend As Boolean, bolReceive As Boolean

Private Sub Class_Initialize()
bolSend = True
bolReceive = True
Set olkApp = Outlook.Application
End Sub

Private Sub Class_Terminate()
Set olkApp = Nothing
End Sub

Private Sub olkApp_ItemSend(ByVal Item As Object, Cancel As Boolean)
If (Left(Item.Subject, 4) = "FW: ") Or (Left(Item.Subject, 4) = "RE:") Then
Item.Subject = Mid(Item.Subject, 5)
If Left(Item.Subject, 5) = "Fwd: " Then
Item.Subject = Mid(Item.Subject, 6)
End If
End If
End Sub

Private Sub olkApp_NewMailEx(ByVal EntryIDCollection As String)
Dim arrEID As Variant, varEID As Variant, olkItm As Object
arrEID = Split(EntryIDCollection, ",")
For Each varEID In arrEID
Set olkItm = Outlook.Session.GetItemFromID(varEID)
If olkItm.Class = olMail Then
Select Case Left(olkItm.Subject, 4)
Case "FW: ", "RE: ", "SV: "
olkItm.Subject = Mid(olkItm.Subject, 5)
End Select
End If
Set olkItm = Nothing
End Sub

Public Sub ToggleSend()
bolSend = Not bolSend
MsgBox "The process of removing RE: and FW: on sent messages has been turned " & IIf(bolSend, "'On'", "'Off'"), vbInformation + vbOKOnly, CLASS_NAME
End Sub

Public Sub ToggleReceive()
bolReceive = Not bolReceive
MsgBox "The process of removing 'RE:', 'FW:', and 'Fwd:' on received messages has been turned " & IIf(bolReceive, "'On'", "'Off'"), vbInformation + vbOKOnly, CLASS_NAME
End Sub
I've tried to recommend you to eliminate the source of the problem. If you do not change the Subject you don't brake the thread.
Even if you manage VBA code to work, what about other users? Or you are not interested in company-wide solution?
I doubt me alone will convince that revert, but they might as more has asked the question. For now i will try to wash the subject field on incoming and hopefully not break the conversation thead. Currently without me doing anything it breaks up it seems.
OK, do as you wish. If you've decided to fight against the corporate policy - good luck!
Please keep discussions about Corporate policies out of subject editing topics.

The macros at technilee are not run a script rules - they are automatic when you reply or send/receive by the looks of it.

You need to use Redemption to clean up the conversation view.

This macro will remove the keyword from the conversation and subject - as written, it is run manually on the selection. It could be converted to a run a script rule.

Thanks but i cant get them to work. When i hit F5 and run the code you provided seems fine. It just dont do anything for my inbox it seems. If i where to run redemption, what variant of redemption would i run? RedemptionLoader? Only one that seems free.

Assuming first message to me gets cleaned up i would be happy from there. As all replys back to me would get cleaned up as well. If technicle`s code is possible to make work please help us do that. Old email does not matter, just anything coming in and out in the future.


Edit: this code works, but you have to start it every time manually.


And it is very difficult to add anything to it.



The superuser one looks like technilee's - it is an automatic macro. It goes in thisoutlooksession or a separate class module, you restart outlook and it runs when you reply.

You need the developer version of redemption. It installs both 32 and 64 bit and outlook knows which to use.

My macro (at slipstick) is a manual macro - you select the message and run it. When I tried a macro that worked with rules it didn't remove the prefix. I tried an itemadd macro (runs when new items added to inbox) - that seems to work most of the time, but it doesn't always get the conversation cleaned up. My manual macro sometimes missed the conversation too.