0

I can't find an answer to this on the forum, or maybe i'm not typing my query in accurately enough.

With my Outlook 2010 at my workplace the default Signature block keeps getting changed to a default option when I load up Outlook. I don't have access to the source file to make any changes as it is all Server side.

What I want to do is change the default selection of my Signature from the old one to a new one.

Under File -> Options -> Mail -> Signatures I want to change my default Signature to something else upon start up of Outlook 2010 using a VBA code of some form. Is there any way that this can be done?

I have already created the new Signature but I need to reselect it as the default option every time I log onto my terminal, which is frustrating.

Looking for any help please.

Martijn Pieters
  • 1,048,767
  • 296
  • 4,058
  • 3,343
Rapter
  • 15
  • 3
  • Possible search string [outlook*] default signature - https://stackoverflow.com/questions/28369487/setting-the-default-signature-via-vba https://stackoverflow.com/questions/42723453/trigger-outlook-event-change-signature – niton Jul 03 '18 at 16:59

1 Answers1

1

After some cursory searching, it looks like Outlook signatures are managed through the Windows registry (for example, see here and here). Specific registry paths seem to depend on your version of Outlook.

Of course, if it's your work email, it's likely you can't make any changes to your registry.

However, if all you want is to automatically insert some specific text to any new email, that can be done via VBA. Basically, you want to use the Open event of a new email to insert specific text. To do that, you need to add the Open hook during the ItemLoad event. Something like this:

' declare the mail item that will have the Open event available
Public WithEvents myItem As Outlook.mailItem

' defines how the Open event will be handled
' note that you only want to do this with unsent items
' (hence the .Sent check)
Private Sub myItem_Open(cancel As Boolean)
   If Not myItem.Sent Then
      'insert your signature text here
   End If
End Sub

' hooks the Open event to a mail item using the ItemLoad event
Private Sub Application_ItemLoad(ByVal Item As Object)
   Dim mailItem As Outlook.mailItem

   If Item.Class = OlObjectClass.olMail Then
      Set myItem = Item
   End If
End Sub

For more information, see the relevant Microsoft articles on the Application.ItemLoad event and MailItem.Open event.

Zack
  • 2,220
  • 1
  • 8
  • 12
  • Determining the correct trigger is a big part of this but you may be interested in the established method to get at a true signature, not hard coded text. https://stackoverflow.com/questions/42723453/trigger-outlook-event-change-signature – niton Jul 03 '18 at 16:58