Solved

Automatically Attach PDF file to all reply emails as well as newly created emails

Posted on 2016-10-27
10
23 Views
Last Modified: 2016-10-27
Is there a way to automatically attach a PDF file whenever someone replies to an email in outlook as well as attach this same PDF to a newly created email? I need to attach a PDF file to basically ALL outbound emails whether they are replies or new emails from scratch. Can this be done in Outlook VBA?
0
Comment
Question by:Lawrence Salvucci
  • 6
  • 4
10 Comments
 
LVL 48

Accepted Solution

by:
Rgonzo1971 earned 500 total points
Comment Utility
You could try to use the ItemSend event

Public WithEvents myOlApp As Outlook.Application
Public Sub Initialize_handler()
 
 Set myOlApp = Outlook.Application
 
End Sub
 
 
 
Private Sub myOlApp_ItemSend(ByVal Item As Object, Cancel As Boolean)

Set myAttachments = Item.Attachments
myAttachments.Add Source:="C:\My Documents\Disclaimer.pdf", Type:=olByValue, DisplayName:="Disclaimer"
 
End Sub

Open in new window

for reference
https://msdn.microsoft.com/en-us/library/office/ff865076.aspx

Regards
0
 
LVL 1

Author Comment

by:Lawrence Salvucci
Comment Utility
I put the code in a new module and ran it but it didn't attach anything. Did I miss something? Here is what I put:

Public Sub Initialize_handler()
 
 Set myOlApp = Outlook.Application
 
End Sub
 
Private Sub myOlApp_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim myAttachments As Outlook.Attachments
Set myAttachments = Item.Attachments
myAttachments.Add Source:="D:\BC Terms and Conditions.pdf", Type:=olByValue, DisplayName:="Disclaimer"
End Sub

Open in new window

0
 
LVL 48

Expert Comment

by:Rgonzo1971
Comment Utility
it misses the with event and you have to close and reopen OL
Public WithEvents myOlApp As Outlook.Application

Open in new window

The sample code must be placed in a class module, and the Initialize_handler routine must be called before the event procedure can be called by Outlook.
0
 
LVL 1

Author Comment

by:Lawrence Salvucci
Comment Utility
I added that line of code and then closed and opened OL and still nothing. Does the "Initialize_handler" routine stay in the class module with the rest of the code or does that go in a separate module?
0
 
LVL 48

Expert Comment

by:Rgonzo1971
Comment Utility
in the class module
 but outside the sub
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
LVL 48

Expert Comment

by:Rgonzo1971
Comment Utility
is the code in "ThisOutlookSession" module?
0
 
LVL 1

Author Comment

by:Lawrence Salvucci
Comment Utility
No. I put it in a new class module. Should it be in the "ThisOutlookSession"?
0
 
LVL 48

Expert Comment

by:Rgonzo1971
Comment Utility
I think so
0
 
LVL 1

Author Comment

by:Lawrence Salvucci
Comment Utility
I put it there and it's working now. I am putting the attachment on my network server so if a user goes to send an email from their laptop and they are not connected to the network then they will not be able to grab the attachment. Is there a way to just bypass the attachment if it cannot be found since they are not on the network instead of having it error out? This is only for users that send emails while on the network in the office. When they are outside the network they don't have to attach this file but I don't want the code to error out.
0
 
LVL 48

Assisted Solution

by:Rgonzo1971
Rgonzo1971 earned 500 total points
Comment Utility
you can test if a file is there with

Res = Dir("c:\myFolder\myFile.txt")
if Res <> "" then
'attach file
End if

Open in new window

0

Featured Post

Windows Server 2016: All you need to know

Learn about Hyper-V features that increase functionality and usability of Microsoft Windows Server 2016. Also, throughout this eBook, you’ll find some basic PowerShell examples that will help you leverage the scripts in your environments!

Join & Write a Comment

Follow this checklist to learn more about the 15 things you should never include in an email signature from personal quotes, animated gifs and out-of-date marketing content.
If you don't know how to downgrade, my instructions below should be helpful.
This Experts Exchange video Micro Tutorial shows how to tell Microsoft Office that a word is NOT spelled correctly. Microsoft Office has a built-in, main dictionary that is shared by Office apps, including Excel, Outlook, PowerPoint, and Word. When …
To add imagery to an HTML email signature, you have two options available to you. You can either add a logo/image by embedding it directly into the signature or hosting it externally and linking to it. The vast majority of email clients display l…

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now