viernes, 19 de noviembre de 2021

VBA EXCEL 2022: LLENAR COMBOBOX CON NOMBRES DE SOLO ALGUNAS DE LAS HOJAS DEL LIBRO

(LAS HOJAS PUEDEN ESTAR VISIBLES U OCULTAS)



Este código es practicamente identico a mi anterior post: "COMO LLENAR UN COMBOBOX CON NOMBRES DE LAS HOJAS DEL LIBRO", sin embargo, en éste aprenderemos como llenar un combobox en un formulario con solo algunos de los nombres de las hojas que tengamos en nuestro libro, estén estas visibles u ocultas.

ANTES: Nuestro libro de excel debe estar habilitada para ejecutar macros, es decir, con la extención .xlsm y nuestra pestaña de programador debe estar en modo diseño para que podamos escribir código y editar los objetos que vamos a utilizar.


PASO 1: Creamos un botón de comando(commandbutton) en una de nuestras hojas, y tambien creamos un formulario. Haciendo doble clic sobre el botón de comando escribimos lo siguiente:

Private Sub CommandButton1_Click()

UserForm1.Show

End Sub

Con esto mostraremos el formulario al hacer clic en el botón de comando.


PASO 2: En el formulario creamos un cuadro combinado (combobox). Creamos también una etiqueta (label) para describír qué datos nos mostrará el cuadro combinado. 



PASO 3: Hacemos doble clic en el formulario y escribimos lo siguiente:

Private Sub UserForm_Initialize()

For Each hoja In Worksheets
Mysheet = hoja.Name 
If Mysheet <> "BUNNY" And Mysheet <> "HOLE" Then
ComboBox1.AddItem Mysheet
End If
Next hoja

End Sub

Esto hará que cuando el formulario se inicialice, por cada hoja en la colección de hojas del libro, guardaremos el nombre de la hoja en una variable llamada MySheet y luego, si la hoja no se llama "BUNNY" y tampoco se llama "HOLE" añadiremos esta variable al combobox como un item, seleccionando de esta forma las hojas que queremos que aparezcan en nuestro cuadro combinado. 


PASO 4: Ejecutar





LINK DE DESCARGA

No hay comentarios.:

Publicar un comentario