VBA Macro used in the Microsoft Office Outlook Application

Outlook Open Email Templates | VBA Macro #9

Share on facebook
Share on twitter
Share on linkedin
Outlook Email templates are great! Opening Outlook email templates not so great. That is why we create the Open Email Templates macro. This Outlook macro will help you quickly access your default email template file path giving you access to all of your created Outlook Email Templates. An Input Box will appear with all of your available email templates with a unique leading number. Simply type the leading number of the email template you want to display and click to Ok to open it. This Outlook macro is designed to grow with you over time and will display all of your email templates as you continue to create them. The Open Email Templates macro puts your email templates at your fingertips. Stop spending time opening email template and start using them efficiently and effectively today!

See it in Action!

Watch this video to see this macro in action.

The Code

Here is the code behind this macro.
'Leverage & Lean "Less Clicks, More Results"
Sub OpenEmailTemplates()
' Means variable is in use
Dim Counter As Integer '
Dim DisplayFiles As String '
Dim FolderPath As String '
Dim NewItem As Outlook.MailItem '
Dim oFSO As Object '
Dim oFolder As Object '
Dim oFile As Object '
Dim TemplateName As String '
Dim TemplateNumber As Integer '
Dim User As String '

On Error GoTo LeverageLean

User = (Environ$("Username"))
FolderPath = "C:\Users\" & User & "\AppData\Roaming\Microsoft\Templates\" 'Default Outlook Email Template path. You can update the FolderPath to somewhere else.

Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oFolder = oFSO.GetFolder(FolderPath)

Counter = 1
 
For Each oFile In oFolder.Files 'Loop through every File in FolderPath
If oFile.Type = "Outlook Item Template" Then 'If the File is an .oft add to DisplayFiles
DisplayFiles = DisplayFiles & vbNewLine & Counter & ". " & Left(oFile.Name, Len(oFile.Name) - 4)
Counter = Counter + 1
End If
Next oFile

If Len(DisplayFiles) > 1023 Then 'If DisplayFiles exceeds the character limit display MsgBox
MsgBox ("You have exceeded the character limit of the InputBox. " & _
"Email templates that should be available for selection will not be able to display. " & _
"Try making the file names of your email templates shorter. " & _
"Navigate to your folder path here: " & FolderPath)
End If

TemplateNumber = InputBox(DisplayFiles, "Outlook Email Templates") 'Determine what Email Template to open

Counter = 1

For Each oFile In oFolder.Files 'Loop through every File in FolderPath
If oFile.Type = "Outlook Item Template" Then 'If the File is an .oft
If Counter = TemplateNumber Then 'If the Counter is the same as the selected Template
TemplateName = oFile.Name 'Selected Email Template File Name
End If
Counter = Counter + 1
End If
Next oFile
 
Set NewItem = Application.CreateItemFromTemplate(FolderPath & "\" & TemplateName)
NewItem.Display 'Open the selected Email Template path

Set NewItem = Nothing
Set oFSO = Nothing
Set oFolder = Nothing
Set oFile = Nothing

Exit Sub

LeverageLean:
If Err.Number = 76 Then
MsgBox ("Something went wrong. Ensure the Folder Path is correct. " & vbNewLine & "Don't hesitate to email me: brentschneider@leveragelean.com")
ElseIf TemplateNumber = 0 Or TemplateNumber > Counter - 1 Then
Exit Sub
End If

End Sub
'Stay Awesome!

Macro Instructions

Watch this video to get started using this macro.

Customization

These lines of code can be customized to personalize this macro.
18 FolderPath = “C:\Users\” & User & “\AppData\Roaming\Microsoft\Templates\” ‘Default Outlook Email Template path. You can update the FolderPath to somewhere else.
32 If Len(DisplayFiles) > 1023 Then ‘If DisplayFiles exceeds the character limit display MsgBox (You won’t be able to see all of your template selection options. Try making the file names of your templates short to resolve this issue.)
Subscribe
Notify of
1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
trackback

[…] Do you find yourself spending all this time creating the perfect email only to end up recreating it in the future? Stop reinventing the wheel over and over again! Outlook allows you create a drafted email and save it as an Outlook Template File (*.oft). Whenever you want to resend this email just open it, make your updates, and click send! Email templates help save time and allow you to send quicker responses. Start creating powerful responses that eliminate follow-up questions and reduce the size of your inbox. Watch this See How video to start creating Outlook Email Templates… Read more »

Search for Outlook Macros

Recent Macros

VBA Macro used in the Microsoft Office Word Application

Word InputBox Call Macros | VBA Macro #27

More Macros More Buttons.  If you create enough macros you will begin to question if a button needs to be created for each one.  It is overwhelming when there are too many custom macro buttons to select from. This also makes navigating to run a specific macro difficult. To address this issue, we created the macro Word InputBox Call Macros! This Word macro displays an InputBox with a list of macros that can be called.  To call a specific macro just enter in the leading number and click ok. The concept of this macro is simple and helps you stay organized storing all macros within one button.

VBA Macro used in the Microsoft Office Excel Application

Excel Update Multiple Workbooks from One | VBA Macro #26

This Excel macro is the inverse of Copy Multiple Workbooks into One where separate Workbooks are being combined into one MASTER Workbook.  The Update Multiple Workbooks from One macro instead takes the current information from the MASTER Workbook and updates separate Workbooks. If you desire one source of information that can be easily distributed across multiple parties this macro is for you!

VBA Macro used in the Microsoft Office Outlook Application

Outlook Create Multiple Emails | VBA Macro #25

You just completed a task on your computer and now you need to email some impacted parties letting them know the task is complete.  Let’s say for example you have to email the client, the billing department, and your supervisor.  You could send one email including all these recipients but this is a problem if you are sending sensitive information specific to everyone involved.  Even if there isn’t sensitive information someone can use Reply All creating an email thread with everyone included. There has to be a better way…of course there is with VBA! This Outlook macro will create multiple emails based on the number that you indicate in an InputBox.  Think of this Create Multiple Emails macro as a code template that allows you generate multiple emails pertaining to different topics. Using the example above the first email can be dedicated to the client, the second email for the billing department, and the third email for your supervisor.

First time using VBA?

The Developer Tab is an additional section of the ribbon when activated allows you access to Visual Basic in Applications like Excel, Outlook, Word.
Setup Now
Once the Developer Tab is available you will have the capability to update your security to allow Macros to run in the current application.
Setup Now
A sub of code is a collection of objects and variables. For the code to successfully run a library of references needs to be set.
Setup Now

Looking for more?

Subscribe as an Insider to receive additional rights.

Contact Us

Looking to improve your computer processes?
Leverage & Lean is here to help!

Copyright © 2019 Leverage & Lean – Uptown Style WordPress theme by GoDaddy