Updating VbaProject.OTM on several users

gruiz

New Member
Outlook version
Outlook 2016 32 bit
Email Account
Exchange Server
I want to update the "VbaProject.OTM" of a few coworkers, everytime I've found some new trick here on Slipstick I want to add it to our VBA bag of tricks :) (progress bars when exporting messages or when saving attachments, this little things make our life at work a lot easier)

I know the file is on "C:\Users\[username]\AppData\Roaming\Microsoft\Outlook\VbaProject.OTM" but I can't find how to update it that besides going to each computer, closing Outlook 2016 and manually copy the latest version from a shared network drive to the actual users Roaming folder.

Is there a way to make Outlook VBA "look" on this shared folder at startup and get always the file found there? I find this a hard task to do since it implies to replace the file that locked because is in use by Outlook as soon as it starts.

I though on a batch that first copy the OTM file to the right location and then starts Outlook but perhaps it exists a more elegant and on-demand way since this requires the user to restart Outlook when a change is made. I can live with that because we work phisically in the same room so its a matter of "Restart outlook, please".

I also though of importing the updated VBA Modules but is not as easy task (it is using VBA in Microsoft Access wich I many years of experience, but I've found Outlook totally different)

Any ideas? We all use Outlook 2016 32bit on Windows 10 PRO 64 bit and we have access to a common network share that acts as a repository for the latest OTM file.
Also I don't have admin privileges so I can't get into every users Roaming folder and replace the file, this also means I can't install an Addin.

Quite a challenge, isn't? :)
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
A batch file to replace the file is the easiest - my memory says they will need to open the editor once when the default file is replaced. Test it to see.

It is possible to open a different OTM using a switch - i think this is still possible in newest version. But I don't think it will work with a network path. To the best of my recollection, this does not require opening the VBEditor to enable the macros.
/altvba otmfilename
You also need to set a registry key to use the switch with Outlook 2013 and later.

Test both methods on one computer and see which works best - it may be that using a batch to copy to a local path on each computer will be the most efficient, once you set up their shortcut to use the switch.
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
Hmm. After re-reading this, it sounds like the registry key may be a hindrance to the switch. :(
 

gruiz

New Member
Outlook version
Outlook 2016 32 bit
Email Account
Exchange Server
Thanks for you help, I wasn't aware of the OTM switch :)

I'm thinking about creating a scheduled task that runs at logon and always copy the latest OTM to the right place to be sure no Outlook is running at that time. If I make an urgent change its a matter of ask for log again. Its not the best solution but it will keep all users updated at least once a day.

Many thanks again for your help, Diana! I'll keep improving the OTM based on tricks and tips found right here :)

I saw that you published an Outlook book a few years ago, is there something that covers VBA published by you or any eBook you can recommend?
 
Top