Add an Attachment Using an Array and Match first 17 Letters to Matching Template .oft to Send eMail

Not open for further replies.


New Member
Outlook version
Outlook 2010 64 bit
Email Account
I've been trying to adapt Diane's code under "Use an Outlook Macro to Send Files by Email" using her array feature, but that array is fixed. I wish to change that fixed array into a variable array, much like the thread "Attachments to New email item" dated Oct 15, 2013. My ultimate goal is to run this as a macro or VBA once a month whereby the code would scan the invoice directory and for every unique invoice (there might be 15 or so), open a separate email using a pre-existing template (.oft) with the same 17 first letters and attach that invoice file and then display it. For example "P010213252 (FC42) YYYYYYYY.pdf" invoice file, then open the corresponding .oft template "P010213252 (FC42) XXXXX.oft". I'm using Outlook 16 under Win 10. I can get the fixed array to work to a certain extent, but the filename attached to each template is always the first .pdf file. I presume I need a second array for the .oft directory. Is there code available that can compare the two directories, one holding the invoices.pdf and the other holding the templates.oft, and if a match is found with the first 17 characters, then open that template .oft and load the matching .pdf file? I've searched but cannot find it. If it exists, please let me know. Thx.
Because both are files, I think you could get a file name in one folder, look for a match in the other - it would be slower than reading both and creating arrays to compare.

This should read the folder and create an array - (untested, so i might have a typo or mistake) - then use each entry to check the other folder..
Dim FileDir As String
Dim strFiles
FileDir = "K:\Files\"
TemplateDir = "K:\Templates\"
strFiles = Dir(FileDir, vbDirectory)
While strFiles <> ""
If strFiles <> "." And strFiles <> ".." And Right(strFiles, 4) = "docx" Then
strList = Left(strFiles, Len(strFiles) - 5) & "." & strlist
End If
Dim myArray() As String
'Use Split function to return a zero based one dimensional array.
myArray = Split(strList, ",")

or if the template names all use the same format - create a string with the template folder names and if the value in in the arrary is in the string, use it to create the tempate name.

For i = LBound(myArray) To UBound(myArray)
If InStr(LCase(otherFolderList), myArray(i)) Then
templatepath = TemplateDir & myArray(i) & ".dotx"

' do whatever

Next i

Using Arrays in Outlook macros

Attachments to New email item
Not open for further replies.
Similar threads
Thread starter Title Forum Replies Date
M "Attachment Detacher for Outlook" add in, does it update the server copy of the email? Using Outlook 1
kkqq1122 How would I add Search for attachment name Outlook VBA and Custom Forms 3
Andrew Quirl Open attachment, manipulate without add-on program? Outlook VBA and Custom Forms 5
Diane Poremsky Add Attachment Names to Message Before Sending Using Outlook 0
D Need to extract a line from a word attachment, and add it to the subject line Outlook VBA and Custom Forms 3
K VBScript Outlook, add attachment Outlook VBA and Custom Forms 1
R Add image within email and not attachment Using Outlook 2
J Is there any restrictions to the number of Attachment i can add? Outlook VBA and Custom Forms 3
M Add-in for verfying recipients email address is in the attachment Outlook VBA and Custom Forms 1
A Attachment not display when add to mail Outlook VBA and Custom Forms 10
G Add Map It button to Custom Contacts Form in Outlook Outlook VBA and Custom Forms 1
G Outlook 2021 Add Picture to Custom Contact Form Outlook VBA and Custom Forms 2
P Can't add custom field to custom Outlook form, it always adds to the Folder instead Outlook VBA and Custom Forms 2
P VBA to add email address to Outlook 365 rule Outlook VBA and Custom Forms 0
S Outlook 2019 Custom outlook Add-in using Visual Studio Outlook VBA and Custom Forms 0
G automatically choosing "add to autocorrect" option Using Outlook 0
F Want to add second email to Outlook for business use Using Outlook 4
K Add an entry to a specific calendar Using Outlook 1
F Add a category before "Send an Email When You Add an Appointment to Your Calendar" Outlook VBA and Custom Forms 0
J Want to create a button on the nav bar (module add-in) to run code Outlook VBA and Custom Forms 2
J Outlook 365 Add keywords from Listbox to the message body where cursor is placed Outlook VBA and Custom Forms 0
O Add Day Number of the year for 2023-2033 Outlook VBA and Custom Forms 5
J GoDaddy migrated to Office365 - Outlook Wont Add Account Exchange Server Administration 21
F Outlook 2019 Outlook 2019 Add and Sync to New computer Comcast server Using Outlook 2
Witzker Add a text line at the end of the note field in all selected Contacts Outlook VBA and Custom Forms 7
A iCloud Outlook Add In is causing Outlook 2021 to crash and got disabled Using Outlook 10
N How to add or delete items to Move dropdown Menu Using Outlook 0
G Add contacts birthday to calendar Using Outlook 4
V How to add 'Previous Item' and 'Next Item' to the Quick Access Toolbar Using Outlook 1
Commodore Safe way to add or update holidays; Windows Notifications issue Using Outlook 8
L did MS ever add way to text via Outlook Using Outlook 5
P How to add a column named categories when searching in Outlook Using Outlook 0
M add new attendee to existing meetings with VBA Outlook VBA and Custom Forms 5
N Can't create NEW GROUP and add/remove a member from existing Group in Outlook Using Outlook 1
Witzker Outlook 2019 Pls. add a Prefix for OUTLOOK 2019 here Using Outlook 1
P Add inanimate objects to meetings? Using Outlook 1
O Outlook 2010 Add delete button to the side of the message list Using Outlook 1
BartH Add a string to the conditions in .Conditions.BodyOrSubject.Text Outlook VBA and Custom Forms 2
A "Get Add-Ins" - Which Version of Outlook to use Using Outlook 1
D Do I need Exchange Add-In? Using Outlook 6
C-S-R Manage Add-ins (Remove Wunderlist) Using Outlook 6
A iCloud add in problems Using Outlook 4
L Macro to add Date & Time etc to "drag to save" e-mails Outlook VBA and Custom Forms 17
C Looking for feedback on new Outlook Add-in Using Outlook 0
L isn't there an OL add-on that flags addressee before sending Using Outlook 3
S Add VBA save code Using Outlook 0
P Shortcut Pane - add shortcut to Office365 group mailbox Using Outlook 1
Z Add ComboBox Value to Body of Email Outlook VBA and Custom Forms 1
G How to add a folder shortcut to outlook quick access toolbar? Using Outlook 6
G Add to Outlook Contacts - Point to non-default contacts folder Using Outlook 0

Similar threads