Saltar al contenido
PROGRAMAR EN VBA MACROS DE EXCEL

Punto de Venta con Excel – Menu Ribbon Personalizado #1002

Punto de Venta en Excel Modificar Menu Ribbon Excel

Punto de Venta en Excel Modificar Ribbon

Siguiendo con los ejemplos para lograr crear un Punto de Venta en Excel paso a paso o desde cero, en el cual se utiliza Excel para gestionar datos y Access para guardar datos; se muestra como modificar la Barra de Menú de Excel o Ribbon, para poder incorporar iconos que permitan manejar funciones del aplicativo Punto de Venta en Excel.

Necesitas manejar Excel? haz click acá, si quieres aprender sobre Excel, en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet, te lo recomiendo no te arrepentirás.

Mira el Playlist en YouTube con todos los vídeos de Punto de Venta en Excel.

Que es el Menu Excel o Ribbon

Ribbon es la barra que se encuentra arriba en el aplicativo de Excel contiene todos los menús y comando para ejecutar las funciones incorporadas en Excel, modificando el código XML se puede personalizar la barra de Menú o Ribbon de Excel, en este post muestro como se hace.

Que se necesita para editar el código XML de un libro de Excel

En primer lugar mínimos de conocimiento del lenguaje de programación, para para este ejemplo no se deben preocupar se enseña paso a paso para que sirven los códigos para agregar una pestaña personalizada y dentro de ellas varios grupos de iconos, dentro de cada grupo de ícono se agregan otros iconos.

Como segunda medida se necesita el Custom UI Editor For Microsoft Office, que se puede descargar desde el final de la página conjuntamente con el ejemplo, se descarga ejecuta y se instala es un aplicativo muy pequeño.



 

Quizás también interese leer:

Calendario en Excel 2020

Buscar Mientras se Escribe y Cargar en Listbox con SQL

Como se Modifica la Ribbon o Barra de Menu de Excel

Una vez descargado el ejemplo del final, el cual contiene un archivo comprimido con el ejemplo de Excel y con el editor de XML Custom UI Editor For Microsoft Office, instalado el mismo luego se debe seleccionar el archivo de Excel sobre el cual se desea modificar el XML, esto se hace desde un icono con un carpeta que tiene el Editor XML, abierto el archivo, se debe ir al menú «Insert» y luego seleccionar «Office 2010 Custom UI Part» luego pegar el código que más abajo se expone en el archivo que se desee modificar y se obtendrá una pestaña personalizada con una serie de iconos dentro, fijarse en el ejemplo, recomiendo ver el vídeo en YouTube el cual amplia la explicación.

Explicación del código para modificar la barra Ribbon de Excel

A continuación se explicará paso a paso el código para un grupo de Iconos, y un splitbutton (es como un combobox) que contiene otro iconos o botones dentro, el resto de los códigos si se observa es exactamente igual para crear más botones.

Es bueno decir que no deben existir nombres repetidos ni de tabs, grupos, ni botones, ya que ello genera errores, si pueden tener dos o más botones un mismo icono y una misma macro asignada.

Si hay algún error de sintaxis en este código, Excel no se bloqueará ni saldrá ningún mensaje, simplemente no se verá la Pestaña o botones personalizados que hemos agregado, es preciso decir que se distingue entre mayúscula y minúscula, lo cual es útil saber cuando asignamos el nombre de una imagen a un icono, por ejemplo si el nombre del icono está con minúscula y lo escribimos con mayúscula o con una letra mayúscula no lo tendrá en cuenta, es uno de los principales errores al igual que el no cierre de las etiquetas que provoca errores.

Para crear la pestaña personalizada se hace con el siguiente código, el cual crea una pestaña personalizada que se denomina «MACROSenEXCEL.com», si observan el ejemplo que se descarga desde el final contiene una pestaña con el nombre mencionado, eso se hace con este código, no se debe olvidar cerrar la etiqueta al final de todo el código:

<tab id=»MyCustomTab» label=»MACROSenEXCEL.com» insertAfterMso=»TabHome»>

…. otros códigos de grupos o botones

</tabs>

 

Para crear el grupo de iconos es el siguiente código, si se fijan en el ejemplo el primer grupo de iconos se denomina «PUNTO DE VENTA», la etiqueta label es la que contiene el nombre del grupo.

<group id=»customGroup1″ label=»PUNTO DE VENTA»>

…. otros códigos de botones

</group >

 

Dentro del grupo de botones se pueden crear entre otros iconos o botones o splitbutton que contiene a su vez más iconos o botones, en este ejemplo creamos varios splitbutton e iconos en la barra de Menú o Ribbon de Excel, el código para el splitbutton es el siguiente:


<splitButton id=»mySplitButton1″ size=»large»>

…. otros códigos de botones

</splitButton>

 

Dentro del splitbutton puede haber un botón principal al que se le asigna una macro y  luego los submenu esto se hace de la siguiente forma, noten que se abrió la etiqueta splitbutton y dentro se colocó el código de un botón.

 

<splitButton id=»mySplitButton1″ size=»large»>

<button id=»customButton1″ image=»compras4″ label=»PV» screentip=»Formulario Punto de venta» supertip=»Muestra formulario de punto de venta que permite facturar y demás funciones» onAction=»Macro1″/>

</splitButton>

 

Dentro del splitbutton pueden existir submenu esto se hace con el siguiente código:


<menu id=»splitMenu1″ itemSize=»large»>

…. otros códigos de botones
</menu>

 

El código de los botones es el siguiente, noten que contiene un «id» que es único; «label» que es el nombre que tendrá el botón y saldrá en la barra de menú, un «screentip» que es opcional y muestra ayuda sobre el botón y un «supertip» que muestra ayuda, pero admite mayor numero de caracteres,  ello funciona al pasar el mouse sobre el icono se observa que se muestra la ayuda.

<button id=»customButton2″ label= «https://macrosenexcel.com» screentip=»https://macrosenexcel.com»
supertip=»https://marcrosenexcel.com» onAction=»macro2″ image=»Tilde» />

El código completo de lo narrado anteriormente sería:

<tab id=»MyCustomTab» label=»MACROSenEXCEL.com» insertAfterMso=»TabHome»>

 

<group id=»customGroup1″ label=»PUNTO DE VENTA»>

 

<splitButton id=»mySplitButton1″ size=»large»>

<button id=»customButton1″ image=»compras4″ label=»PV» screentip=»Formulario Punto de venta» supertip=»Muestra formulario de punto de venta que permite facturar y demás funciones» onAction=»Macro1″/>

<menu id=»splitMenu1″ itemSize=»large»>

<button id=»customButton2″ label= «https://macrosenexcel.com» screentip=»https://macrosenexcel.com»
supertip=»https://marcrosenexcel.com» onAction=»macro2″ image=»Tilde» />


</menu>

</splitButton>

</group >

</tabs>

 

Códigos para que funcione el Menú de Excel personalizado:

El código que se muestra a continuación permite asignar a cada icono una macro obteniendo como resultado que al presionar el botón desde la barra de Menú personalizada que acabamos de crear, realizará la acción contenida en la macro, por ejemplo el botón que tiene asignada la «macro1» llamará o ejecutará los códigos contenidos en la «macro1», que están en un Modulo de VBA; que a su vez llama o ejecuta los códigos de la macro denominada «MyMacro1».

 

Sub macro1(control As IRibbonControl)

‘Menu icono 1
On Error Resume Next
‘Call MyMacro1
End Sub

 

El mismo procedimiento descripto en el párrafo anterior se hace con todos los botones asignando un nombre de macro, que deberá estar en un módulo de VBA explicitado que debe hacer dicha macro cuando sea llamada o ejecutada desde el botón o ícono personalizado, a continuación se muestra el código para la macro 2 a 5 que es el mismo código que el mostrado para la macro1.

 

Sub macro2(control As IRibbonControl)
‘Menu icono 2
On Error Resume Next
‘Call MyMacro2
End Sub


Sub macro3(control As IRibbonControl)
‘Menu icono 3
On Error Resume Next
‘Call MyMacro3
End Sub


Sub macro4(control As IRibbonControl)
‘Menu icono 4
On Error Resume Next
‘Call MyMacro4
End Sub


Sub macro5(control As IRibbonControl)
‘Menu icono 5
On Error Resume Next
‘Call MyMacro5
End Sub

 



 

El código XML que se debe agregar al Libro para la Pestaña e Iconos Personalizados

<customUI xmlns=»http://schemas.microsoft.com/office/2006/01/customui»>

<ribbon>
<tabs>
<tab id=»MyCustomTab» label=»MACROSenEXCEL.com» insertAfterMso=»TabHome»>

<group id=»customGroup1″ label=»PUNTO DE VENTA»>


<splitButton id=»mySplitButton1″ size=»large»>
<button id=»customButton1″ image=»compras4″ label=»PV» screentip=»Formulario Punto de venta» supertip=»Muestra formulario de punto de venta que permite facturar y demás funciones» onAction=»Macro1″/>

<menu id=»splitMenu1″ itemSize=»large»>

<!– Ultima modificación hecha esta en estas lineas con el agregado de grupo de controles –>
<button id=»customButton2″ label= «https://macrosenexcel.com» screentip=»https://macrosenexcel.com»
supertip=»https://marcrosenexcel.com» onAction=»macro2″ image=»Tilde» />

<button id=»customButton3″ label= «https://macrosenexcel.com» screentip=»https://macrosenexcel.com»
supertip=»https://marcrosenexcel.com» onAction=»macro3″ image=»dinero5″ />

</menu>

</splitButton>

<splitButton id=»mySplitButton2″ size=»large»>
<button id=»customButton4″ image=»dinero12″ label=»OTRO» screentip=»https://macrosenexcel.com» supertip=»https://macrosenexcel.com» onAction=»Macro4″/>

<menu id=»splitMenu2″ itemSize=»large»>

<button id=»customButton5″ label= «https://macrosenexcel.com» screentip=»https://macrosenexcel.com»
supertip=»https://marcrosenexcel.com» onAction=»macro5″ image=»Grafico1″ />


<button id=»customButton6″ label= «https://macrosenexcel.com» screentip=»https://macrosenexcel.com»
supertip=»https://marcrosenexcel.com» onAction=»macro6″ image=»dinero5″ />

</menu>

</splitButton>


<splitButton id=»mySplitButton3″ size=»large»>
<button id=»customButton7″ image=»dinero13″ label=»OTRO» screentip=»https://macrosenexcel.com» supertip=»https://macrosenexcel.com» onAction=»Macro7″/>

<menu id=»splitMenu3″ itemSize=»large»>

<button id=»customButton8″ label= «https://macrosenexcel.com» screentip=»https://macrosenexcel.com»
supertip=»https://marcrosenexcel.com» onAction=»macro8″ image=»grafico» />


<button id=»customButton9″ label= «https://macrosenexcel.com» screentip=»https://macrosenexcel.com»
supertip=»https://marcrosenexcel.com» onAction=»macro9″ image=»dinero5″ />

</menu>

</splitButton>


<splitButton id=»mySplitButton4″ size=»large»>
<button id=»customButton10″ image=»dinero9″ label=»OTRO» screentip=»https://macrosenexcel.com» supertip=»https://macrosenexcel.com» onAction=»Macro10″/>

<menu id=»splitMenu4″ itemSize=»large»>

<button id=»customButton11″ label= «https://macrosenexcel.com» screentip=»https://macrosenexcel.com»
supertip=»https://marcrosenexcel.com» onAction=»macro11″ image=»dinero5″ />


<button id=»customButton12″ label= «https://macrosenexcel.com» screentip=»https://macrosenexcel.com»
supertip=»https://marcrosenexcel.com» onAction=»macro12″ image=»dinero5″ />

</menu>

</splitButton>

<button id=»customButton13″ size=»large» label= «OTRO» screentip=»https://macrosenexcel.com»
supertip=»https://marcrosenexcel.com» onAction=»macro13″ image=»dinero11″ />

</group >


<group id=»customGroup2″ label=»OTROS»>
<button id=»customButton14″ size=»large» label= «OTRO» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro14″ image=»formato» />

<button id=»customButton15″ size=»large» label= «OTRO» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro15″ image=»FORMATO» />

<button id=»customButton16″ size=»large» label= «OTRO» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro16″ image=»importar6″ />

<button id=»customButton17″ size=»large» label= «OTRO» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro17″ image=»eliminar1″ />
</group >

<group id=»customGroup3″ label=»IMPRIMIR»>
<button id=»customButton18″ size=»large» label= «Setup Hoja» screentip=»Configura Hoja Excel»
supertip=»Permite configurar el encabezado de la hoja de Excel.» onAction=»macro18″ image=»setting6″ />

<button id=»customButton19″ size=»large» label= «Vista Previa» screentip=»Vista Previa de Impresión»
supertip=»Permite visualizar lo que se desea imprimir, la impresión está acotada a la grilla realizada.» onAction=»macro11″ image=»buscar19″ />

<button id=»customButton20″ size=»large» label= «Imprimir Hoja» screentip=»Imprime Hoja Excel»
supertip=»Permite imprimir la planilla de cálculos que se está visualizando en pantalla.» onAction=»macro20″ image=»imprimir4″ />
</group >

<group id=»customGroup4″ label=»EXPORTAR»>

<button id=»customButton21″ size=»large» label= «PDF» screentip=»Guardar en PDF»
supertip=»Permite guardar en PDF la planilla de cálculos judiciales.» onAction=»macro21″ image=»pdf2″ />

<button id=»customButton22″ size=»large» label= «Excel» screentip=»Exporta a un Archivo Excel»
supertip=»Permite Exportar a un archivo de Excel la planilla de cálculos realizada.» onAction=»macro22″ image=»Excel5″ />


<splitButton id=»mySplitButton5″ size=»large»>
<button id=»customButton23″ image=»Word3″ label=»Word» screentip=»Exporta a un Archivo Word» supertip=»Exporta a Word, si se presiona el botón principal exporta a Word con escrito estándar, también se puede elegir los distintos escritos en el subgrupo de menus» onAction=»Macro23″/>

<menu id=»splitMenu5″ itemSize=»large»>
<!– Ultima modificación hecha esta en estas lineas con el agregado de grupo de controles –>
<button id=»customButton24″ image=»Word» label=»https://macrosenexcel.com» onAction=»Macro24″ description=»https://macrosenexcel.com»/>
<button id=»customButton25″ image=»Word» label=»https://macrosenexcel.com» onAction=»Macro25″ description=»https://macrosenexcel.com»/>
<button id=»customButton26″ image=»Word» label=»https://macrosenexcel.com» onAction=»Macro26″ description=»https://macrosenexcel.com»/>
</menu>
</splitButton>

</group >

<group id=»customGroup5″ label=»HERRAMIENTAS»>
<button id=»customButton27″ size=»large» label= «Actualizar» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro27″ image=»Excel10″ />

<button id=»customButton28″ size=»large» label= «Buscar» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro28″ image=»buscar24″ />

<button id=»customButton29″ size=»large» label= «Ordenar» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro29″ image=»ordenar» />

<button id=»customButton30″ size=»large» label= «Limpiar» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro30″ image=»Limpiar» />
</group >


<group id=»customGroup6″ label=»OTRO»>
<button id=»customButton31″ size=»large» label= «OTRO» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro31″ image=»Access3″ />

<button id=»customButton32″ size=»large» label= «OTRO» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro32″ image=»Guardar8″ />

<button id=»customButton33″ size=»large» label= «OTRO» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro33″ image=»Guardar9″ />

<button id=»customButton34″ size=»large» label= «OTRO» screentip=»https://macrosenexcel.com»
supertip=»https://macrosenexcel.com» onAction=»macro34″ image=»Access3″ />
</group >

<group id=»customGroup7″ label=»SETUP»>
<button id=»customButton35″ size=»large» label= «Setup» screentip=»Establece Configuración del Sistema»
supertip=»Permite configurar sistema, entre otras, la dirección de la base de datos access.» onAction=»macro35″ image=»setting3″ />

<button id=»customButton36″ size=»large» label= «Ayuda» screentip=»Muestra Ayuda»
supertip=»Muestra ayuda sobre como operar el sistema.» onAction=»macro36″ image=»ayuda1″ />
</group >

</tab>
</tabs>
</ribbon>
</customUI>

 



Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.

If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.

Donate:
Cuenta Paypal: https://paypal.me/programarexcel
Cuenta Bitcoin: 1KBGGb8fyDzyR3X1Rie6m7VguzaAfngNbd
Cuenta Ether: 0x41Bbd24556914C83a31217eBb3BC49789b66e407

Summary
Author Rating
1star1star1star1star1star
Aggregate Rating
no rating based on 0 votes