Thursday, 19 March 2009

automatically BCC in Outlook 2007

Have you ever wanted to automatically bcc all your outbound mail to a specific email address? I wanted to send a copy of ALL sent mail from Outlook at work to my Gmail address. You could try to do this via Outlook's Rules and Alerts, but there's no option to bcc...only cc. I'd prefer that all my work contacts not know my personal Gmail address, and it's not very professional. I also don't want to manually enter my Gmail address in the bcc field of every outgoing message... the solution? Visual Basic Scripting.

The steps (MS Outlook 2007):

  1. Open MS Outlook 2007
  2. Under the Tools menu, select Macro > Visual Basic Editor (or Alt+F11)
  3. In the left menu bar, expand Project1, Microsoft Outlook Session, and open ThisOutlookSession
  4. Enter copy & paste this code, making sure to substitute with your real email address:
Private Sub Application_ItemSend(ByVal Item As Object, _
Cancel As Boolean)
Dim objRecip As Recipient
Dim strMsg As String
Dim res As Integer
Dim strBcc As String
On Error Resume Next

' #### USER OPTIONS ####
' address for Bcc -- must be SMTP address or resolvable
' to a name in the address book
strBcc = ""

Set objRecip = Item.Recipients.Add(strBcc)
objRecip.Type = olBCC
If Not objRecip.Resolve Then
strMsg = "Could not resolve the Bcc recipient. " & _
"Do you want still to send the message?"
res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _
"Could Not Resolve Bcc Recipient")
If res = vbNo Then
Cancel = True
End If
End If

Set objRecip = Nothing
End Sub

Save the session, close the Visual Basic Editor, restart Outlook, and you're good to go! (make sure that you've allowed Outlook to run macros) You can verify that your emails are being cc'd by (1) checking your alternate email address or (2) looking at the bcc field of one of your messages in the Sent Items folder.


Joey said...

this iss super i had same problem with rules and alerts

Mina said...


This is very great!

How can we adjust it to BCC only if the "subject includes a spcific string?

Many thanks,

Anonymous said...

how do i see the BCC field in my sent emails?

Anonymous said...

have followed above rules and copied code but doesn't seem to work. what is bit is green re ' #### USER OPTIONS ####' address for Bcc -- must be SMTP address or resolvable' to a name in the address book - Thanks

andrew said...

@Anonymous(1)- Open your Sent Items folder and then open a message which was bcc'd. In the header/info portion of the email (top left) you will see the bcc address under the "Bcc:" field. This should appear below the "To:" field and immediately above the Subject.

andrew said...

@Anonymous(2) - The green portion of the code is a comment. It doesn't affect the rest of the code, but it reminds users that the email address you enter (to replace the red text) must either be a normal SMTP resolvable email address or a name in your Address Book.

Anonymous said...

Dear Andrew,
It's a great script and work well.
However, I wonder if we would like to multiple
BCC: email address.
What can I do or edit the code ?

Thank a million..


EricaB said...

This is awesome. One question: Can you tie it to a specific account? I have several accounts set up in my outlook, and I only want the auto bcc for two of them. Any help would be greatly appreciated!

andrew said...

@EricaB hmm not sure how to tie it to a single account. I've just played with global Outlook rules. You could try adding 'If Item.SenderEmailAddress = "YOUR@EMAIL.COM"' below line 'objRecip.Type = olBCC' and another 'End If' below the current two. May/may not work...

Anonymous said...

I've used this to Bcc our new CRM system and it works perfectly. Thanks you've just saved me a $100

Anonymous said...

If you want to send to two forwarding addresses, can this be done?

andrew said...

@Anon - Hmm, I'm not sure. Try substituting "" with ";" Unfortunately I no longer use Outlook and cannot test this out.

Anonymous said...


Thank you, thank you, thank you for this wonderful macro!

olearydc said...


For the last few years have been doing this manually and was a pain.

never made a macro. so this was perfect and it works!


ertpresso said...

It does not work with my Outlook 2007 SP2. :(

andrew said...

@ertpresso - Why not/what happens?

Anonymous said...

Doesn't work on my Outlook 2007 either. The mail sends but when I check the Sent Items there is no Bcc in the mail item and it does not come through to the email address I specified, (which is in my address book). If it matters I run a 32 bit version of Win 7.

Anonymous said...

I think this is one of the moѕt vital info for me.

And i am glad reading your article. But shoսld remark on few normal issues,
The weƄѕіte taste is idеal, the articles is in rеality gгeat : D.
Good task, cheers

my web site; eine günstige Suchmaschienen-Optimierung für Frankfurt am Main in der Innenstadt

Anonymous said...

I was wondering if you ever considered changing the structure of your website?
Its very well written; I love what youve got to say. But maybe you
could a little more in the way of content so people could connect with it better.
Youve got an awful lot of text for only having 1 or two pictures.

Maybe you could space it out better?

My page; automated paydays work from home (

Rupesh said...

I want Hide BCC name when i open sent item mail its showing me. I have to take it confidentially. please help me,
Thank in Advance

Rich Levin said...
This comment has been removed by the author.
Rich Levin said...


I've noticed this script does not work when I am replying to or forwarding a message that has been filed to a folder.

Thought you would want to know. I'm going to try to figure it out.



Maaar ツ said...

Thank you very much for sharing this, it helps me a lot !!!

Anonymous said...

Thanks! This is just what I needed.

Khaled Abdelwahab said...

Amazing thanks!!!

Anonymous said...

Thank you!! It is very helpful..

Anonymous said...


it is working :)

NBTri said...

I signed in just to say thank you for this script.
Thank you very much :)

  © Blogger template 'Isolation' by 2008

Back to TOP