A day or two after setting up my Outlook GTD macros (as explained here), they stopped working. When I clicked on the macro in the toolbar, used the shortcut keys, or clicked the macro icon in the Quick Access toolbar in Outlook, nothing happened. That was strange because everything worked the day before. I opened up the VB Editor from within Outlook (Alt+F11) and tried to run the macro from within the VB editor. That is when I saw what the problem was:
Something must have changed with the Microsoft security settings on my machine. Once I read the error message, I remembered when I originally created the macros several years ago (on my previous computer) I had to create a digital signature and sign the macros in order to get past the Trust Center security settings. Luckily doing so isn’t that complicated.
Step 1 – Create Personal Digital Certificate
The first thing you need to do is create a personal digital certificate. To do this, you need to run the
SELFCERT.EXE program supplied by Microsoft Office. On my machine, the executable was located in the C:\Program Files\Microsoft Office\Office12 directory. Assuming you have access/authority to run the executable, locate the file and double-click it to start the program. This should bring up the Create Digital Certificate window.
Type in your name in the Create Digital Certificate dialog and click OK. The personal certificate has now been created on your machine.
Step 2 – Sign your macros using your digital certificate
Next you need to sign your macros using the personal certificate you just created. Open the macro file in the VB Editor (Alt+F11 in Outlook) and select the Digital Signatures menu item from the Tools menu. Click the Choose button to select a certificate.
You should see the certificate you created in the previous step.
Select the digital signature to use and click OK.
Make sure to save the VB project and close the VB editor.
Step 3 – Restart Microsoft Outlook
I’m not sure if this is required, but it seems like I had to restart Outlook for the macro signing to take effect.
Step 4 – Update the Trust Center
When you restart Outlook, and run the macro, it will either work or, depending on your settings, you may see the Trust Center security warning notice.
Click on the ‘Show Signature Details’ to verify that the macro you are trying to run is signed with your certificate. Assuming this is the case, click on the “Trust all documents from this publisher” button. The macro should now run.
If your macros still don’t work, or if you don’t see the Outlook Security Notice window when trying to run the macro, it could be that your Trust Center settings are blocking all macros without warnings. To check this setting, click on the Trust Center menu item from the Outlook Tools menu. Select Macro Security from the left panel and verify your Macro Security.
Have a great day!
24 thoughts on “Outlook Macro Stops Working (or Doesn’t Work to Begin With)?”
Thank, worked perfect
Thank you, this saved hours and hours of banging head on the table.. worked like a charm 🙂
Works like a charm.
Worked great for me as well. Unfortunate that it works once and then quits working with no warning.
Thanks very much, this worked like a charm.
I have a simple script to forward the selected email to my work and personal task tracking tool. This inexplicably stopped working the other day and could not understand why.
I would like to echo the thanks for the time saved debugging and/or just going without using it.
Hooray. If only I’d found this sooner 🙂
Hi, I keep getting the error ‘folder doesn’t exist’. I have subfolders under the inbox. I have tried the following and it’s still not working.
1) Set objFolder = objInbox.Folders(“Mailbox – Me”).Folders(“MyFolder1.2.3”)
2) Set objFolder = objInbox.Folders(“Mailbox – Me”).Folders(“MyFolder1”).Folders(“MyFolder1.2”).Folders(“MyFolder1.2.3”)
Please help me, I need theses macros so much at work.
Hi again, please ignore. I found the answer on the main page. THANK YOU SO MUCH FOR THIS. You have saved me time and irritation. 🙂
Thanks for the info, it worked perfectly.
Worked beautifully thanks a lot!
I am trying to run the macro and Im not getting anywhere. I believe Im having the same problem as everyone else. I imported contact from an excel spreadsheet (this is where the info originated from, never has been in outlook). I want their birthdays to show on my calendar. I dont want to manually update each contact. I understand this Macro should fix this for me but apparently I dont know how to run a macro.
Im opening VB and inserting a new Module. I copy and past they above macro. I client run. It says “running” on the top header bar. Afterwords, when its done, nothing appears to have happened. Also, i have enabled macros in Outlook.
Worked perfectly! Thanks
I’ve been looking for a solution for why my macros are not working for a week now.
Thank you. creating the certificate worked perfectly. the odd thing for me was when I wrote the macro it worked just fine then the following week it wouldn’t run.
Amazing! Thanks so much!!!
Thanks for this! Was very frustrating that my macro built to BCC myself on every email I send had stopped working. This fixed the problem!
Thanks for the very straight-forward article.
Thansk Jim, worked like a charm
Hey great post. I hope it’s alright that I shared it on my Facebook,
if not, no problem just let me know and I’ll remove it.
Either way keep up the good work.
All the tutorials should be like this. Clear and effective.
My macro stopped working. I created a new certificate. When I did, I also found my previous certificate. I currently am using my new certificate. I also checked the Trust Center settings and they are correct. Is it possible that corporate network security is overriding my settings?
The purpose of my macro is to fix a major flaw in Outlook. I want to be prompted where to save sent emails every time I send an email. Right now they all go to the Sent folder automatically. I sort my emails based on content. Each project has its own folder. Team emails have a folder, personal emails have a folder, etc. Now I have to remember to go to the Sent folder and manually categorize an email every time I send one.
What I am looking for is either how to make the macro work OR some setting in Outlook that I have missed which would accomplish this.
I had the exact same problem with my Macros not working a few days after creating them. This worked for fixing my issue in Outlook 2010 although I had to search for selfcert.exe since it was in a different location.
this still worked on Outlook 2016 and was able to keep using my Outlook email templates with Macro buttons.