
' fix relative references to images, etc. Set oTextStream = oFSO.OpenTextFile(sigPath) Set oFSO = CreateObject("Scripting.FileSystemObject") Private Function ReadSignature(sigName As String) As Stringĭim appDataDir, sig, sigPath, fileName As StringĪppDataDir = Environ("APPDATA") & "\Microsoft\Signatures" OMsg.HTMLBody = Item.Body & "" & sig ' oMsg.HTMLBody ' Mysig is the name you gave your signature in the OL Options dialog Set oMsg = Application.CreateItem(olMailItem) Private Sub Add_Signature(ByVal addy as String, ByVal subj as String, ByVal body as String) The approach below is fairly flexible and still simple. I found the approach where you reference the Inspector property of the created message did not add the signature I wanted (I have more than one account set up in Outlook, with separate signatures.) I constructed this approach while looking for how to send a message on a recurring schedule. ObjMail.HTMLBody = ObjMail.Body & "HTML Table goes here" Set ObjMail = OlApp.CreateItem(olMailItem) So I guess my question is now: How do I display the default signature and still display an html table? Sub X() Thanks to JP (see comments), I realize that the default signature is showing up at first, but it disappears when I use HTMLBody to add a table to the email. (Called with getboiler(SigString = "C:\Users\" & Environ("username") & "\AppData\Roaming\Microsoft\Signatures\Mysig.txt"))

Set ts = fso.GetFile(sFile).OpenAsTextStream(1, -2) Set fso = CreateObject("Scripting.FileSystemObject") So this works, but it's not ideal: Function GetBoiler(ByVal sFile As String) As String

But this will be used by several people and they may have a different name for their default htm signature file. Ideally, I'd like to just use ObjMail.GetDefaultSignature, but I can't find anything like it.Ĭurrently, I'm using the function below (found elsewhere on the internet) and referencing the exact path & filename of the htm file. This would be the default signature that is automatically added when creating a new email. After creating the mailitem object, how do I add the default signature to the email?

It's been smooth coding so far, but I'm new to Outlook. I am writing a VBA script in Access that creates and auto-populates a few dozen emails.
