Como agregar un botón de comando a una cinta de opciones personalizadas

Nota: Antes de realizar el paso a paso de esta entrada primero ejecute el paso a paso  del siguiente enlace:

    O descargue el siguiente archivo y carguelo como complemento de Excel:



    1. Verifique que Microsoft Excel no se encuentre en ejecución, y ejecute la aplicación Custom UI Editor.
    2. En la barra de herramientas del Custom UI Editor presione el botón "Open".



    3. En el cuadro de diálogo "Open OOXML Document" ubique el archivo "Mi cinta de opciones.xlam" y presione el botón "Abrir".



    4. Para agregar un botón mi grupo "Grupo 01" de mi cinta de opciones "Mi Cinta" modifique el código XML como se muestra a continuación:

    ---------------------------------------------------------------------------------------------------------------------------
    <customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
      <ribbon>
        <tabs>
          <!--- Creamos la cinta personalizada -->
          <tab id="MiCinta" label="Mi Cinta">
            <group id="Grupo01" label="Grupo 01">
              <button 
    id="Boton01"
    label="Botón 01"
    imageMso="DatasheetView"
                size = "large"
    onAction="MacroBoton01"
             />
            </group>
          </tab>
        </tabs>
      </ribbon>
    </customUI>
    ---------------------------------------------------------------------------------------------------------------------------
    Nota: Si observa un poco el código, notará que se le agregaron 7 líneas entre las líneas 6 y 14, la línea 7 (<button) indica que el control que se requiere es un botón de comando y la 13 (/>) indica su cierre. Las líneas de la 8 a la 12 establecen las propiedades del control. La línea 8 (id="Boton01") define su identificador. La línea 9 (label="Botón 01") el nombre de la etiqueta que mostrará el botón. La línea 10 (imageMso="DatasheetView") le asigna una imagen prediseñada del botón, existen una gran variedad de imágenes prediseñadas, en el siguiente enlace puede ver algunas: ImageMso. La línea 11 (size = "large") el tamaño, si cambia esta instrucción por esta size = "normal", el control se mostrará de un tamaño pequeño. Finalmente la línea 12 (onAction="MacroBoton01") indica la acción a ejecutar, en este caso se refiere a una macro de nombre "MacroBoton01", la cual no se ha codificado aún, más adelante explicaremos como construir esta macro. En caso de requerir otro botón en este grupo puede modificar el código como se muestra a continuación:
    ---------------------------------------------------------------------------------------------------------------------------
    <customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
      <ribbon>
        <tabs>
          <!--- Creamos la cinta personalizada -->
          <tab id="MiCinta" label="Mi Cinta">
            <group id="Grupo01" label="Grupo 01">
              <button 
    id="Boton01"
    label="Botón 01"
    imageMso="DatasheetView"
                size = "large"
    onAction="MacroBoton01"
             />
              <button 
    id="Boton02"
    label="Botón 02"
    imageMso="CacheListData"
                size = "large"
    onAction="MacroBoton02"
             />
            </group>
          </tab>
        </tabs>
      </ribbon>
    </customUI>
    ---------------------------------------------------------------------------------------------------------------------------

    5. Guarde los cambios y Cierre el Custom UI Editor.
    6. Ejecute Microsoft Excel y luego presione "Alt + F11" para ingresar a "Microsoft Visual Basic para aplicaciones" (VBA).
    7. Posicione el cursor del ratón sobre "VBAProject (Mi cinta de opciones.xlam)" en el "Explorador de proyectos" para hacer aparecer el menú emergente, y seleccione la opción "Insertar" y seguidamente seleccione la opción "Módulo" para insertar un nuevo módulo a nuestro complemento de Excel.


    8. En el panel "Ventana de Propiedades" modifique la propiedad "(Name)" que por defecto tendrá el valor de "Módulo1" a "MisMacros".


    9. En la ventana del Editor de código "Mi cinta de opciones.xlam - MisMacros (Código)" escriba el siguiente código:

    ---------------------------------------------------------------------------------------------------------------------------
    Private Sub MacroBoton01(control As IRibbonControl)
        MsgBox "Ejecución Macro Botón 01"
    End Sub
    ---------------------------------------------------------------------------------------------------------------------------
    Nota: Para familiarizarse con el código VBA que se escribió anteriormente visite el siguiente enlace: Introducción a VBA.

    10. En la barra de herramienta presione el botón "Guardar" y cierre VBA.


    Nota: El botón de comando que se agrego al "Grupo 01" de "Mi Cinta" simplemente despliega un cuadro de texto en donde se indica que la macro se ha ejecutado.


    Para descargar el complemento creado en esta entrada siga el siguiente enlace:



    No hay comentarios:

    Publicar un comentario