Outlook doesn't have a built in method you can use to automatically include yourself (or other email address) in the BCC field when you send a new message. You can use Rules Wizard to CC and address but not to send a BCC.
To BCC the message, you need to either use VBA or a utility listed below.
Always BCC Code Sample
Basic VBA instructions are below, instructions with screenshots are at How to use Outlook's VBA Editor .
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 = "address@domain.com" Set objRecip = Item.Recipients.Add(strBcc) objRecip.Type = olBCC If Not objRecip.Resolve Then strMsg = "Could not resolve the Bcc recipient. " & _ "Do you want to send the message?" res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _ "Could Not Resolve Bcc") If res = vbNo Then Cancel = True End If End If Set objRecip = Nothing End Sub
BCC Some but not All Messages
If you need to BCC, some but not all, messages, you'll need to use an IF statement to filter the messages. While you can filter on To, subject, or category fields, if you need to use series of If statements, filtering by category may be the easiest.
This code block BCCs one address if the category is Personal, another if the category is Important and exits if there is no category. It could easily be switched around to exit if there is a category and BCC everything else.
To add a category to email, click on the Expander in the Tags group and choose the Category from the options dialog. You could also use a macro to add a specific category to the ribbon for easy access. Get the code from Adding Categories when Composing Email.
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 If Item.Categories = "Personal" Then strBcc = "address@domain.com" ElseIf Item.Categories = "Important" Then strBcc = "new@address.com" Else Exit Sub End If Set objRecip = Item.Recipients.Add(strBcc) objRecip.Type = olBCC If Not objRecip.Resolve Then strMsg = "Could not resolve the Bcc recipient. " & _ "Do you want to send the message?" res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _ "Could Not Resolve Bcc") If res = vbNo Then Cancel = True End If End If Set objRecip = Nothing End Sub
BCC Messages sent From a Specific Account
If you have multiple accounts in your profile and only want to BCC messages sent through a specific account, use an IF statement to check the SendUsingAccount value. Be sure to use the account name as it appears in the From field or Account Settings dialog.
To BCC from all but one account, replace the = sign in the If statement with <>.
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 strBcc = "alias@domain.com" ' Use the account name as it appears in Account Settings If Item.SendUsingAccount = "account@domain.com" Then Set objRecip = Item.Recipients.Add(strBcc) objRecip.Type = olBCC If Not objRecip.Resolve Then strMsg = "Could not resolve the Bcc recipient. " & _ "Do you want to send the message?" res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _ "Could Not Resolve Bcc") If res = vbNo Then Cancel = True End If End If End If Set objRecip = Nothing End Sub
How to use VBA
You will need macro security set to low during testing. To check your macro security in Outlook 2010 and up, go to File, Options, Trust Center and open Trust Center Settings, Macro Settings. In Outlook 2007 and older, it's at Tools, Macro Security.
After you test the macro and see that it works, you can either leave macro security set to low or sign the macro.
- Open the VBA Editor using Alt+F11.
- Expand Project1 and double click on ThisOutlookSession.
- Copy then paste the macro into ThisOutlookSession. (Click within the code, Select All using Ctrl+A, Ctrl+C to copy, Ctrl+V to paste.)
Don't forget to replace address@domain.com with the correct address.
Tools
Always Bcc | Sperry Software's Always BCC add-in for Outlook is being released for Outlook 2010. The add-in automatically adds a CC/BCC email address to all outgoing emails - making it perfect for compliance reasons. It can also include a cc or a bcc based on conditions you set up, for instance if you are sending from a particular account. The add-in now works with both 32-bit and 64-bit Outlook. |
Auto BCC/CC for Microsoft Outlook | This add-in automatically creates a BCC (blind carbon copy) or CC (carbon copy) for all or some of your messages based on simple rules that you set. It can send a BCC/CC for all outgoing email messages to specified addresses or with certain words in the subject or attachment name, e-mails sent from all or some of your accounts. You can create very flexible rules for every occasion, introduce exceptions and use several keywords in one field. The plug-in works in Microsoft Outlook 2007 and newer. |
Compliance Copies Add-In | Sperry Software's Compliance Copies add-in for Microsoft Outlook will automatically add multiple BCC or CC recipients based on multiple different rules for different people. Unlike the Always BCC add-in, this new add-in also supports exceptions to the CC/BCCs conditions. This tool works with Outlook 2007/2010/2013. |
Message AutoFill | Create rules for filling TO, CC, BCC and SUBJECT fields of new message based on the folder where the original message is stored. Add-in allows to use different settings for different folders. The fields you don't want to change will remain the same. It only allows automatic address management, while message body remains intact. Works with Microsoft Outlook 2000 and up, fully compatible with Microsoft Exchange Server public and shared folders. Part of the MAPILab Toolbox. |
Power Toys for Outlook | Outlook plays a vital role in term of office productivity in communication. However, there are some features missing, such as auto-BCC, Gmail Push Notification, and standardized import/export on contacts, calendars and tasks. Power Toys for Outlook is a collection of Outlook add-ins that provides these useful features. Auto BCC for sends blind carbon copy to recipients. Export Outlook Contacts to a single vCard (.vcf) and Excel. Export Outlook Appointments and Tasks to ICAL (.ics). GGNotify enables push notification from Google upon new e-mail arrival. |
Silent BCC for Outlook | If you want to monitor every email that leaves your company, Silent BCC for Outlook is the right tool. Once installed, the plug-in will deliver you BCC copies of all messages sent from all accounts of a PC. Users won't know that a BCC copy was sent from their machines, since the add-in is invisible in Outlook and BCC addresses are removed from Sent Items. Users can't turn the plug-in off or alter your settings. You can tweak the add-in to be copied on each outgoing email or allow exceptions. |
SilentMail for Outlook | SilentMail for Outlook monitors outgoing emails and sends a blind carbon copy (BCC) of every email to a specified address. SilentMail for Outlook does this by copying the message from the Outbox mail folder, making the monitoring process invisible for the user. Supports all versions of Outlook. Does not require Exchange server. |
TuneReplyAll | TuneReplyAll shows a warning message when a user is going to reply to everyone. The user has to confirm his choice to reply to all. This will help to prevent sending out confidential information. If Outlook includes the user's own address in Reply all, TuneReplyAll will remove it from the message. |
Automatically BCC using Smartphones
While not "an Outlook problem", automatically BCCing when sending mail from a smart phone is a popular feature. Because the mail goes directly to the SMTP server, Outlook's ability (or lack of it) is not a factor; it's all about what the smart phone software supports.
IPhone and iPad users can set the device to always BCC your address in Options > Mail, Calendar, and Contacts.
Automatically BCC using Exchange Transport rules
Administrators of Exchange Server can configure a transport rule, or in Office 365, a Mail flow rule, to BCC messages to another address, bypassing the need for VBA or other solutions (and without the user's knowledge).
Transport and Mail flow rules can be created and configured using a cmdlet or from the Exchange System Manager console.
More Information
Exchange 2007 Message Transport Rules
To automatically Bcc all outgoing messages - OutlookCode.com
How to use Outlook's VBA Editor
Reply to All Includes My Address
Warn before sending messages to the wrong email address
Use this freeware: https://ivasoft.com/autobccflow.shtml
Diane, very interesting topic, I have never thought about using VBA to Bcc myself, what about using the new quick steps funcitonality? would you recommend? Cheers
Quick steps would work, but you need click the Quick step button to reply. The macro automatically adds the BCC when you send.
Quick Steps is good for occasional use, the macro to BCC every message.
Does anyone know how to implement this Always BCC Code Sample in MAC OS outlook ?
Outlook mac doesn't support VBA - but if you are BCCing all messages, Outlook has the option in Preferences- it's under Composing.
Diane,
I CAN'T THANK YOU ENOUGH!!!
Recently I had to move to Outlook 365 due to a fatal sync error with Outlook 2007. Previously, I was using an add-in that auto BCC'd from my two work email addresses (but not from my personal email) in Outlook so that my web-based CRM could capture and store emails based on the "To" recipient field in the original.
When I made the move to Outlook 365 my add-in no longer worked (didn't support Win 7 Pro 64 bit and Office 365 64 bit).
I searched for about 5 hours today for a solution and then I landed on your website. I used your VBA code but modified it to add a 2nd If/Then loop for my 2nd work email and it works perfectly! (I haven't programmed since college, and that was a long, long time ago, but I was able to follow the syntax and successfully make this change.)
Thank you! Thank you! Thank you!
Mike
Hello, is there any way that I could make this merely fill the field, not do it after clicking send?
You can have it filled in when you click New message or reply.
https://www.slipstick.com/developer/code-samples/default-subject-messages/
There is an example there to CC, that can be changed to BCC.
Right, I've tried that one, with no success, and I'm assuming that is because I'm using office 365 outlook. Is there anything for newer versions?
In Case u have multiple email accounts in outlook and desire to Auto BCC each email account separately....try following code
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
Dim strBcc1 As String
On Error Resume Next
strBcc = "cfopidc@gmail.com"
strBcc1 = "cfonip@gmail.com"
' Use the account name as it appears in Account Settings
If Item.SendUsingAccount = "CFO@PIDC.COM.PK" Then
Set objRecip = Item.Recipients.Add(strBcc)
objRecip.Type = olBCC
If Not objRecip.Resolve Then
strMsg = "Could not resolve the Bcc recipient. " & _
"Do you want to send the message?"
res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _
"Could Not Resolve Bcc")
If res = vbNo Then
Cancel = True
End If
End If
If Item.SendUsingAccount = "saleem_ahmed@nip.com.pk" Then
Set objRecip = Item.Recipients.Add(strBcc1)
objRecip.Type = olBCC
If Not objRecip.Resolve Then
strMsg = "Could not resolve the Bcc recipient. " & _
"Do you want to send the message?"
res = MsgBox(strMsg, vbYesNo + vbDefaultButton1, _
"Could Not Resolve Bcc")
If res = vbNo Then
Cancel = True
End If
End If
End If
End If
Set objRecip = Nothing
End Sub
This does forward my emails, but as a cc:, not a bcc:.
If you are using the BCC field in the code and i's not working, is the address in the BCC field when you send it? If so, your mail server i changing it.
no it is in the cc: field. it must get added after I push send.
Do you have a rule set to CC outgoing messages? The CC would be added as it was sent in that case.
How can you edit the code to Bcc to multiple email addresses?
tried assigning multiple addresses to the 'strBcc' but gives me error msg when i send mails
You can't (usually) put everything in one string. If you do, don't use the resolve lines - let outlook resolve it on send.
To enter multiples you need to repeat these lines:
You can shorten it using an array or select case to loop.
I have repeated these lines to add a second BCC recipient, however it only goes to the first BCC not the second one. Could you please rewrite the whole code for 2 BCC's. Thanks.