Have Outlook Remind You of Forgotten Attachments

Sign in to queue


The latest thing in email add-ons seems to be programs that help you to not look stupid when sending email. What do I mean by that? I mean sending out messages saying “see attachment” when clearly, there is no attachment present. Not only does this make you feel a little silly, it also wastes your time and that of your recipients as you have to resend the email with your attachment included.

Since Microsoft Outlook is still heavily used by corporate emailers, it’s in this program where forgotten attachments are probably the most common and burdensome for others. How nice it is that there’s now an option to check for forgotten attachments in Outlook. And setting it up is as easy as copying and pasting a little script.

This Outlook VB script was originally created by LifeHacker commenter Jack Stowage then was later modified by another reader, Troy (no last name provided). Thanks to both of you guys for making our lives easier. 

Want to install this script yourself? Here’s how.

1. Copy and Paste the following text (don’t worry, you don’t need to understand it):

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim m As Variant
Dim strBody As String
Dim intIn As Long
Dim intAttachCount As Integer, intStandardAttachCount As Integer

On Error GoTo handleError

'Edit the following line if you have a signature on your email that includes images or other files. Make intStandardAttachCount equal the number of files in your signature.
intStandardAttachCount = 0

strBody = LCase(Item.Body)

intIn = InStr(1, strBody, "original message")

If intIn = 0 Then intIn = Len(strBody)

intIn = InStr(1, Left(strBody, intIn), "attach")

intAttachCount = Item.Attachments.Count

If intIn > 0 And intAttachCount <= intStandardAttachCount Then
    m = MsgBox("It appears that you mean to send an attachment," & vbCrLf & "but there is no attachment to this message." & vbCrLf & vbCrLf & "Do you still want to send?", vbQuestion + vbYesNo + vbMsgBoxSetForeground)

    If m = vbNo Then Cancel = True
End If


If Err.Number <> 0 Then
    MsgBox "Outlook Attachment Reminder Error: " & Err.Description, vbExclamation, "Outlook Attachment Reminder Error"
End If

End Sub

2. In Outlook, go to Tools –> Macro –> Visual Basic Editor in the menu options. (You may need to expand the project by clicking the plus (+) sign under Project1 until you see ThisOutlookSession.)

3. Expand ThisOutlookSession by double-clicking it.

4. Paste the code into the big white empty space like so:


5. Click “Save”

The Discussion

Add Your 2 Cents