Personalizar la cinta de PowerPoint en tiempo de ejecución

Estoy desarrollando un complemento de PowerPoint y me gustaría desactivar temporalmente algunos de los controles de la cinta de opciones mientras la aplicación del complemento escorriendo.

He desarrollado una solución que funciona como se esperaba cuando el complemento eshabilitado, pero esto no es realmente adecuado, porque desactiva algunos controles de uso común, como SlideMaster, SlideSorter, etc.

Estoy usando PowerPoint 2010.

Aquí hay un ejemplo de XML que está bien formado:

<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>

Aquí hay una muestra de devolución de llamada, tomada deesta respuesta 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

Cuando navego a laView Cinta, una alerta me informa que:

La macro no se puede encontrar o se ha deshabilitado debido a la configuración de seguridad.

Presumiblemente esto se refiere a laGetVisible ¿macro? Mis ajustes de macros son:

Habilitar todas las macros (no recomendado)Confíe en el acceso al modelo de objeto del proyecto VBA

He estado luchando con lo que he encontrado hasta ahora, pero hasta ahora no he podido implementar sugerencias. La mayoría de las respuestas son específicas de Excel. Realmente no he encontrado nada específico de PowerPoint, pero pensé que no debería ser terriblemente difícil portar el código de una aplicación a otra, como lo he hecho para muchas otras cosas en VBA.

También he intentadoesta método, pero elSetCustomUI no está disponible en PowerPoint en laApplication oPresentation nivel, tal vez es único o solo aplicable a Visual Studio?

Respuestas a la pregunta(1)

Su respuesta a la pregunta