Lately I'm trying to create a custom ribbon tab that can store controls from multiple add-ins.
I have a number of add-ins I created in the past and - assuming this can be solved - this will be the best way to display multiple add-in controls at once.
(The other alternatives are to: a) abuse the built-in 'Add-Ins' tab - which quickly gets cluttered with multiple dropdowns & buttons; or b) have a custom ribbon tab for each add-in - which clutters up the ribbon with excess tabs instead).
This dream has (almost) been solved by the indefatigable Ken Puls. See his article at: http://www.excelguru.ca/blog/2007/03...ong-workbooks/
I follow the article instructions then make the following changes.
I open Leech.xlsm with 'Custom UI Editor for Microsoft Office' and change the 'Leech' references to 'Leech1' and save. I then open & save the XLSM as an add-in (leech1.xlam) and load it.
I then repeat the above but this time I change the 'Leech1' to 'Leech2' in XML and save it as another add-in ('leech2.xlam')
I check the UI Test tab and at first it appears to be working. But when I click on the buttons, the call backs from the leech groups are both going to leech2 add-in.
- I suppose I could customise the callback name for every add-in but that would be a nuisance (and slight risk of doubling up) - isn't there a better way?
- It throws me that there is no ribbon object set. What if I want to invalidate a specific group? (I tried adding it to one of them but it didn't work)
- As there is no ribbon object - how would I set a loss of ribbon state recovery?
- I take it (from a few brief experiments made) that it would be very difficult (if not impossible) to get dynamic menus running for any add-in using the global ribbon frame?
Bookmarks