Hemos realizado este segundo menú para un formulario. Éste es un poco más profesional y más complejo de diseñar.
Por supuesto, hemos utilizado VBA Excel.
13 de septiembre de 2025
Este formulario, cuando se presenta, observamos tres botones, los cuales son Archivo, Editar e Imprimir. Al pulsar en alguno de ellos, se nos mostrará el submenú que tenga asignado ese botón, y por supuesto, si tenemos un botón pulsado, donde se nos muestra un submenú, al pulsar en otro botón, se nos ocultará el submenú que estaba mostrándose.
Elementos que tenemos: un formulario donde se encuentran los botones y un módulo donde se encuentran las rutinas que tienen que ejecutar los botones de cada submenú.
Los botones principales tienen el name:
btnmenuArchivo
btnmenuEditar
btnmenuImprimir
Los botones de los submenu tiene el name:
btn1
btn2
btn3
btn4
btn5
Código:
Primero hemos creado una variable para todo el formulario que le hemos dado el ombre de cTral de tipo control.
Hemos creado una subrutina llamada ocultarOpciones, utilizando for each que recorrerá todos los controles del formulario.
Este código lo que nos hace es mostrar u ocultar determinados controles que se encuentran en el interior del formulario.
Cuando el formulario se inicia cargamos esta cogido, y nos mostrará solamente los botones principales, ya que en su name poseen la palabra btnmenu + algo más.
Este código que es de los botones principales, nos hará es mostrar los botones principales, con el submenú de cada uno cuando pulsemos en el botón correspondiente.
Por supuesto, falta lo que tiene que ejecutar los botones del submenu, que en mi ejemplo lo único que hace es mostrar un msgbox, pero ahí puede ir la ejecución del código.
Espero, que os sea interesante, este segundo menú en VBA es bastante más intersante que el anterior.
© 2025 Mariano Garrido - Todos los derechos reservados