Update Ribbons Dynamically
If you have setup a multi-lingual application you may want to change the Ribbon Labels dynamically. To do so the ribbon needs to be cached when loading. This can be done using callback onLoad of the <customUI> element.
Needed Ribbon XML:
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="CallbackOnLoad"> </customUI>
To be copied to a standard module:
Option Compare Database Option Explicit Public gobjRibbon As IRibbonUI Sub CallbackOnLoad(ribbon As IRibbonUI) ' Cache a copy of RibbonUI. Set gobjRibbon = ribbon End Sub
Now you have the possibility to adjust single ribbon controls using gobjRibbon.InvalidateControl "ControlID"
or the entire ribbon using gobjRibbon.Invalidate.