Excel – How to store VBA Macros for Office 2007 to have them always available and share them with others

microsoft-excel-2007microsoft-office-2007microsoft-powerpoint-2007microsoft-word-2007vba

I have created some useful VBA macros for Word, Excel Outlook and PowerPoint 2007.

Now I want to

  • have them always available in the corresponding application via keyboard shortcut or icon to click and
  • also have a possibility to share them easily with colleagues so if anything gets updated that they can easily use the new version.
  • have an overview over changes (version control)

Already creating custom commands in the "ribbon" in Office 2007 seems very difficult for me and I have the problem that when I store the macros in a certain file, this file has to be opened to make the macros work – I'd like to have that open in the background.
Does anyone know a good tutorial or book which covers that?

Can I create my own AddIn? If I remember correctly, and AddIn can not be modified directly any more, so if the code is constantly growing I'd need to save the source code in one place and the addin in another – is that true?

Best Answer

For Excel, your macros should be stored in the Personal Macro Workbook (PERSONAL.XLSB), which is by default hidden. Word has a Normal template which (IIRC) can store macros. Outlook has a similar thing, but I can't remember what it's called. PowerPoint is the anomaly and as far as I remember doesn't seem to have a place to store global macros.

I use SyncBackSE to sync my Excel macro workbook between computers. I don't update Outlook macros frequently enough to need a way of syncing them, but you could probably do something similar. Syncing can only be done when Excel is closed, as it locks the workbook. I don't know how you'd implement version control.

Related Question