Dostosowywanie wstążki PowerPoint w czasie wykonywania
Opracowuję dodatek do programu PowerPoint i chciałbym tymczasowo wyłączyć niektóre elementy sterujące wstążką, gdy jest to aplikacja dodatkowabieganie.
Opracowałem rozwiązanie, które działa zgodnie z oczekiwaniami, gdy dodatek jestwłączone, ale nie jest to wystarczające, ponieważ wyłącza niektóre często używane elementy sterujące, takie jak SlideMaster, SlideSorter itp.
Używam programu PowerPoint 2010.
Oto przykładowy XML, który jest dobrze sformatowany:
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
<ribbon startFromScratch="false">
<tabs>
<tab idMso="TabView">
<group idMso="GroupMasterViews" getVisible="GetVisible"/>
</tab>
</tabs>
</ribbon>
</customUI>
Oto przykładowe wywołanie zwrotne pobrane zta odpowiedź SO:
Sub GetVisible(control As IRibbonControl, ByRef returnedVal As Boolean)
If TrapFlag Then
returnedVal = False ' control is hidden
Else:
returnedVal = True ' control is not hidden
End If
End Sub
Kiedy nawiguję doView
wstążka, alert informuje mnie, że:
Makra nie można znaleźć lub zostało ono wyłączone z powodu ustawień zabezpieczeń.
Przypuszczalnie odnosi się to doGetVisible
makro? Moje ustawienia makra to:
Walczyłem z tym, co do tej pory znalazłem, ale jak dotąd nie byłem w stanie wdrożyć sugestii. Większość odpowiedzi jest specyficzna dla programu Excel. Naprawdę nie znalazłem niczego specyficznego dla programu PowerPoint, ale doszedłem do wniosku, że przeniesienie kodu z jednej aplikacji do drugiej nie powinno być trudne, ponieważ zrobiłem to dla wielu innych rzeczy w VBA.
Próbowałem teżto metoda, aleSetCustomUI
nie jest dostępny w programie PowerPoint na stronieApplication
lubPresentation
poziom, być może jest unikalny lub dotyczy tylko Visual Studio?