Está en la página 1de 7

Seleccionar Hoja de

Clculo desde un
UserForm

Cuando echamos a volar nuestra imaginacin y nos


decidimos a crear algn complemento que expanda
la funcionalidad de Excel, siempre requerimos de
ciertas rutinas para gestionar nuestros datos de una
forma gil y eficiente.
Hace unos das, un seguidor, Percy Prez
Huacchillo, me solicitaba una rutina para
seleccionar hojas de clculo, desde un listado
desplegable incrustado en una hoja de clculo,
mediante la herramienta"Validacin de datos", en la
pestaa DATOS... pues esta es la respuesta a su
peticin, a la cual, decid hacerlo de diferente
manera, es decir, desde un formulario y mediante
un ComboBox.
El propsito es seleccionar desde el ComboBox, la
hoja de clculo que deseamos establecer como hoja
de clculo activa. Con esto podramos
complementar otras rutinas, como el ingreso de
datos desde un formulario, con destino a la hoja

seleccionada.
Muy bien, iniciemos insertando un UseerForm en el
Editor de Visual Basic, al cual le agregaremos una
etiqueta y un ComboBox... te tiene que quedar de la
siguiente manera:

El ComboBox agregado, lo he dejado con su


nombre predeterminado "ComboBox1"... ahora
insertamos un mdulo al cual le vamos a pegar el
siguiente cdigo:

Sub Proceso()
1
Dim Hoja As Worksheet
2
For Each Hoja In Worksheets
3
If
Hoja.Name
=
4 UserForm1.ComboBox1.Value Then
5
Hoja.Select
6
End If
7
Next Hoja
8 End Sub

As te tiene que quedar el cdigo insertado:

Observa que he declarado la variable Hoja con el


tipo de objeto Worksheet, para poder tener control
sobre
las
diferentes
hojas
de
clculo.
Mediante el bucle con la instruccin For... Next,
realizo el recorrido sobre las diferentes hojas de
clculo, identificando cada nombre que tiene

asignado cada una de las hojas... que si encuentra


coincidencia con el nombre seleccionado en
el ComboBox, nos enviar a la hoja de clculo
seleccionada.
Para hacer funcionar la rutina "Proceso", tienes que
agregar esta lnea: "Call Proceso", dentro del
evento Change del ComboBox en el UserForm... lo
cual te quedar as:

Ahora bien... visualicemos la interfaz de usuario y


las hojas de clculo segn como las dispuso nuestro
buen amigo Percy, para poder seleccionarlas.

Como habrs notado, en la imagen tenemos


diferentes hojas de clculo a seleccionar. La ltima
hoja, que es la hoja "datos", es donde tenemos el
listado de cada una de las hojas de clculo, con el
propsito de manejar dicha informacin desde
el ComboBox. Puedes ver que he seleccionado
dicho listado para asignarle un nombre de rango, al
cual le he puesto "DATA"... este nombre lo
colocaremos en las propiedades del ComboBox
segn lo puedes ver en la siguiente imagen:

Noten que he seleccionado el ComboBox y en el


panel
de
propiedades
he
seleccionado
"RowSource", en donde he escrito el nombre del
rango que establecimos anteriormente, es decir,
"DATA"

Y eso es todo... no olvides guardar tu proyecto como


archivo de Excel habilitado para macros.

También podría gustarte