Wonderful question from a very recent Time Management using Outlook course held on-site. Question: How can I make sure that I never forget an attachment when I send an email using Outlook? Answer: If you use Outlook 2013, the feature is built into the programme so all you have to do is make sure that it is enabled. If you use an older version of Outlook however, then you can either download a third-party addin (some free, some at a cost) or type a few lines in the VBA window.

Outlook 2013

In Outlook, click File then select Options and select the Mail section of the Outlook Options window. Scroll down to the Send messages features and make sure that this option is enabled: Warn me when I send a message that may be missing an attachment.  A screen capture is worth a thousand instructions, so here is the Outlook Options window in question.
Outlook 2013 Options dialog with the option to Warn me before sending a message which may be missing an attachment

Outlook 2013 Options dialog

Outlook 2010 and earlier

Option 1: Install a third-party addin

You could of course download this free Forgotten Attachment Detector add-in for Outlook or you could purchase AbleBits’ Outgoing Email Checker (for Outlook 2007 and 2010). I have not tried either solution so install and run at your own risk, then come back here and let me know 🙂

Option 2 (recommended): Make your own outgoing email checker code in Outlook

The alternative is to type a few lines of code in Outlook’s VB window. It’s easy and it works very well so don’t be intimidated about the steps and working with VB if it’s your first time; after all, aren’t you on this blog to learn new stuff? The code will trigger an error message any time you type ‘attach’ in an email but there is no attachment in the message. What’s best is that you can change the code to your own requirements such as adapt it to your own language or variations of the word ‘attach’ Here’s how: In Outlook (works with most current versions):
      • Press ALT+F11 to open the Microsoft Visual Basics for Applications window.
      • In the Project Explorer window, expand the project structure until you see ThisOutlookSession. A screen capture of the Outlook VBA Project Explorer Window where ThisOutlookSession is selected
      • Double-click ThisOutlookSession. A code window opens in the main part of the screen. It is probably a blank page for you.
      • Paste this code into the window
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
 If InStr(1, Item.Body, "attach", vbTextCompare) > 0 Or InStr(1, Item.Subject, "attach", vbTextCompare) > 0 Then
 If Item.Attachments.Count = 0 Then
 answer = MsgBox("There's no attachment, send anyway?", vbYesNo)
 If answer = vbNo Then Cancel = True
 End If
 End If
End Sub
It will look like this:
Outlook VBA Code Window Check for missing attachments in Body or Subject

Outlook VBA Code Window:  Check for missing attachments in Body or Subject

      • Now that you have typed the code, press ALT+Q to close the Outlook VBA window and return to Outlook. You can also close by clicking this command: Outlook VBA menu: Close and Return to Outlook in the File menu
  What this code does is check for the text ‘attach’ in the body or subject of a message after you click send and displays this warning if it finds ‘attach’ but the number of attachments is zero. At this point you can cancel or continue as shown.
Outlook custom warning about missing attachments before sending a message

Warning dialog: Missing attachment.

  Credit where credit is due: original code from Slipstick.com modified to check both the subject line or message body for the text ‘attach’ Go on, try that now. Paste the code and send a message. Type ‘attachment’ in the subject or body but don’t attach anything to your email. Did it work? Leave a comment. This code works as of the date of publication of this post but once more, try at your own risk.