I am trying to define a ribbon for an Excel VBA Addin, with tabs, groups and buttons. It all works OK. This is done with a CustomUI like process (I actually have a script that zips and unzips).
However, if the window is narrowed, then entire groups just disappear (together with their keyboard shortcuts!). What I would like is that the labels disappear first, just leaving the icons, as happens on, for example, the Home tab in Excel.
There is some confusing documentation, but no complete example. I am also confused about the relationship between Office Ribbon, WPF.Net ribbon, Dynamics ribbon, and Windows Ribbons. I suspect they are unrelated tools.
Any pointers to an example most welcome.
After many red herrings, found it. Put
<group ... autoScale ="true">
on all group elements. Does not work for Excel 2007 (which is why I use a script to generate variants of ribbons for different versions of Excel).
BTW. Excel > Options > Advanced > General > Show addin errors needs to be checked in order to see ribbon errors.
As to my second part, it looks like there are several different unrelated implementations of the Ribbon, which makes the docs hard to find.
Related
I am currently working on an PowerPoint Addin and I am currently finishing the Ribbon. I'd like to create a control to change the size of objects that looks similar to the inbuild button "ShapeWidth" and "ShapeHeight":
However, I couldn't find the correct control type and hence I built the below by myself using an editbox and buttons. Although it's working I find the other style way cleaner but I haven't found the correct type.
Not all Ribbon X (Office Fluent UI) control types that Microsoft uses in its Office applications are made available to third-party developers. This, I'm afraid, falls into that category.
You should probably be able to get the image, at least, by specifying the idMso for the built-in control.
I've got a dozen macros that have 90% similar code. I've created 4 sets of VBA in an add-in file so that I don't have to revise a dozen different places any time a change needs to be made. The plan is to end up with:
specific code
universal code A
specific code
universal code B
The users are not particularly tech-savvy so I want to make the distribution as painless and idiot-proof as possible.
Also, the add-ins don't have to be visible--no one is going to run them on their own, they're just going to be embedded and called upon from other macros.
I've looked around online and the closest thing I've found is this How to combine multiple VBA macros into one add-in file for Excel
It still looks like this is geared more towards having multiple buttons, which I really don't need (or want...I don't actually want ANY buttons)
Not really sure what kind of code I could show to help with this problem, since I don't know if this is even possible to do.
Once you save the XLAM file you just have to click on Excel Add-ins under the Developer tab, browse to the folder where it is stored, and open. It will then appear as an add-in package that you can click on.
By the "Shapes Menu," I mean the menu that you get to from the ribbon by going to Home -> Shapes.
I would like to either:
Choose my own shapes for within the Shapes menu, including changing the names of separators
Create my own ribbon menu from scratch that allows you to create a gallery with separators
Here is a picture:
Note: I'm interested in doing this for Powerpoint 2013, not sure if that makes a difference.
A global intro to the Ribbon is available on the Microsoft site at http://msdn.microsoft.com/en-us/library/aa338202%28v=office.12%29.aspx. Be sure to check out parts 2 and 3, links to which are located in left menu of that page above.
More specifically, you might find some useful guidance on building a Gallery at http://msdn.microsoft.com/en-us/library/dd904887%28v=office.12%29.aspx.
In terms of modifying the XML behind ribbons, I use the Custom UI editor. You can download it at http://openxmldeveloper.org/blog/b/openxmldeveloper/archive/2009/08/07/7293.aspx
I am in the process of creating a VBA add-in for Excel 2010, and I used the "Custom UI Editor for Microsoft Office" tool to create my own ribbon.
However, I would like to give the user the option to load my add-in without displaying the ribbon, or with different parts of the ribbon visible.
With menus, I know you can completely control them programmatically, but ribbons seem to work differently.
Is there a way in VBA to not load my customUI.xml ribbon tabs on startup?
Is there a way to remove items from (or add items to) these tabs at runtime?
here is a whole slew of help on this subject Awesome Ribbon Help. I think points 2 and 3 are of particular interest to you.
I'm working in a ribbon project for Excel 2007, using Visual Studio 2008 and VSTO, I'm trying to make my ribbon's groups collapse into galleries when I resize the Excel window, this is a functionality that the other tabs in the ribbon have (the tabs that come with Excel).
At first, I thought this wouldn't be that much difficult, I imagine that it would be like a property from the ribbon, but I have researched a lot about it and it seems that it is not that much easier.
I was looking at this article, there is a post from a guy called "Mike McGavin", he is asking for the same thing that I'm, and the guy that answer his question tells him that auto resize is not current functionality on custom groups/controls.
Now, that post is 1.5 years old...so I'm hoping something new has been out there, maybe some of you know something about it.
Thanks.
It's in 2010. Scroll down to Custom Group Auto-Scaling section.
http://blogs.technet.com/office2010/archive/2009/11/03/ui-extensibility-in-office-2010.aspx