Avatar of Jamie Garroch (MVP)
Jamie Garroch (MVP)
Flag for United Kingdom of Great Britain and Northern Ireland asked on

How to determine which idMso ribbon control ids are supported on Office 365 Mac

On a PC, I can issued this command to tell PowerPoint to arrange all visible windows:

Application.CommandBars.ExecuteMso "WindowsArrangeAll"

Open in new window

If I try this on a Mac I get a run time error 5 (invalid procedure or argument).

Other MSO control IDs do in fact work on Mac such as this one:

Application.CommandBars.ExecuteMso "ShowNotes"

Open in new window

Furthermore, the CommandBars.FindControls method doesn't seem to work on Mac.

So I have a couple of questions:

1. How can I invoke the Arrange Windows function on Mac? (it's in the menu bar under Window / Arrange All, as opposed to the ribbon)
2. Why do some control IDs not work on Mac?
3. Is there documentation showing which controls are/are not supported in addition to this on GitHub? https://github.com/OfficeDev/office-fluent-ui-command-identifiers
Microsoft OfficeVBAMicrosoft PowerPoint

Avatar of undefined
Last Comment
John Korchok

8/22/2022 - Mon
John Korchok

View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
Ask your own question & get feedback from real experts
Find out why thousands trust the EE community with their toughest problems.
Jamie Garroch (MVP)

Thanks again John. Some responses:

Yep, the Mac OM is challenging to use to say the least, especially if you use UserForms as there's no designer on Mac. Dev on PC, try on Mac, broken, go back to PC, try again, repeat numerous times! Things like the guides OM simply don't exist. But I was extremely happy to learn from Microsoft that application events and LoadPicture (including PNG) are now supported. Dynamic ribbon galleries at last :-)

1. I tried briefly yesterday and made some progress. I maximised any that are visible and then changed size and position. Seems to work.
2. I think they're focussed on web first e.g. Office.js
3. That was what I was thinking I'd have to do! Not sure I have time in this lifetime though :-D

I need to update this relatively old article with the above points: http://youpresent.co.uk/developing-vba-powerpoint-mac/
Jamie Garroch (MVP)

Thanks John. I always appreciate your insight and dedication to the presentation community with the generosity you afford it.
Jamie Garroch (MVP)

Ha. And in the interest of sharing, this doesn't work on Mac:

Window.View.ZoomToFit = msoTrue

Open in new window

But this does:

CommandBars.ExecuteMso "ZoomFitToWindow"

Open in new window

Go figure :-D
Your help has saved me hundreds of hours of internet surfing.
John Korchok

Thanks for your kind words. And congratulations on the creative command substitution!