Un código vba excel que me seleccione la hoja del libro indicada en el combobox y ahí descargue mis datos!

Necesito de su ayuda para poder terminar mi proyecto de excel en este caso sobre macros. Bien entrando en detalles tengo un formulario de captura de datos y otro de validación de datos capturados, en el formulario de validación de datos tengo un combobox que selecciona la hoja en donde quiero que registre mis datos capturados, lo que quiero es que al momento de clickear en un botón llamado "Validar" de mi formulario de validación escoja la hoja seleccionada en el combobox y ahí descargue los datos.!

El código que tengo solo me permite indicar una hoja y no me funciona por que tengo 65 hojas para las cuales necesito el mismo formulario de validación de datos entonces es muy dilatado estar programando formulario por formulario. El código para el botón "validar" de mi formulario de validación valga la redondancia es el siguiente:

Private Sub CommandButton2_Click()
Worksheets("Hoja1").Select <<< Ahi quiero que aparezca la hoja seleccionada en el combobox de mi formulario de validacion de datos >>>>
Range("B9").Select
Do While Not IsEmpty(ActiveCell)
    ActiveCell.Offset(1, 0).Activate
Loop
ActiveCell.Offset(0, 0) = Label9.Caption
ActiveCell.Offset(0, 1) = Label10
ActiveCell.Offset(0, 2) = Label11
ActiveCell.Offset(0, 3) = Label12
ActiveCell.Offset(0, 4) = Label13
ActiveCell.Offset(0, 5) = Label14
Unload ValidarDatos
Load IntroducirDatos
IntroducirDatos.Show
End
End Sub

Espero puedan ayudarme y espero haber expresado bien mis ideas!

1 Respuesta

Respuesta
1

H o l a:

Te anexo la macro actualizada

Private Sub CommandButton2_Click()
'Act.Por.Dante Amor
    existe = False
    hoja = ComboBox1
    If hoja = "" Then
        MsgBox "Selecciona una hoja en el combo"
        Exit Sub
    End If
    '
    For Each h In Sheets
        If UCase(h.Name) = UCase(hoja) Then
            existe = True
            Exit For
        End If
    Next
    If existe = False Then
        MsgBox "La hoja en el combo no existe en el libro"
        Exit Sub
    End If
    '
    Worksheets(hoja).Select
    Range("B9").Select
    Do While Not IsEmpty(ActiveCell)
        ActiveCell.Offset(1, 0).Activate
    Loop
    ActiveCell.Offset(0, 0) = Label9.Caption
    ActiveCell.Offset(0, 1) = Label10
    ActiveCell.Offset(0, 2) = Label11
    ActiveCell.Offset(0, 3) = Label12
    ActiveCell.Offset(0, 4) = Label13
    ActiveCell.Offset(0, 5) = Label14
    Unload ValidarDatos
    Load IntroducirDatos
    IntroducirDatos.Show
    End
End Sub

Hola Dante saludos y espero estés de lo mejor!

En atención a tu repuesta la cual agradezco, quisiera me explicaras como funciona puesto que ya la probé y no me descarga los datos en la hoja que selecciono en el combo puesto que me sale el mensaje

MsgBox "Selecciona una hoja en el combo"

aun ya habiendo seleccionado la hoja en mi combobox! Para que me entiendas al momento de dar Clic en el boton "Validar" me aparece ese msj que cito arriba y no me descarga la informacion en la hoja seleccionada en el combobox! Si de alguna manera podrias mandarme tu correo para enviarte las formas y veas el funcionamiento talvez me entiendas un poco mas!

Agradezco nuevamente tu atención!

Cómo se llama tu combo, yo le puse combobox1, deberás cambiar en la macro en esta línea el nombre de tu combo:

hoja = ComboBox1

Si todavía tienes problemas envíame tu archivo.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Darwing Tijerino” y el título de esta pregunta.

¡Gracias! ¡Muchísimas Gracias Dante!

Pues te comento que mi error estaba en que primero había ubicado mal el nombre de mi combobox y el segundo que no me había percatado que en la línea de código <<<WorkSheets(Hoja).Select>>> esa palabra de hoja esta sin comillas y yo la tenia con comillas por la que visual basic me la identificaba como el nombre de la hoja !

Que genial hayas podido ayudarme muchísimas gracias y te envío un correo con una consulta para ver si puedes ayudarme!

Dante Saludos yo aquí de nuevo molestando!

Te cuento que la respuesta que me has dado me ha sido de utilidad pero ahora surge el siguiente problema que las personas con las que trabajo el archivo tienden a confundirse al momento de seleccionar la hoja donde se descargaran los datos.

Bien, dicho lo siguiente mi pregunta es ¿Podrás acomodar el código para que los datos se descarguen de la hoja de donde se llama al formulario? Es que eso de estar seleccionando la hoja en un combox me ha creado cierto inconveniente y pues se me ocurrió preguntarte si se podrían descargar los datos en la hoja activa en mi casos desde donde mando a llamar el formulario!

Agradezco de antemano tu apoyo y respuesta!

 H o l a:

Con mucho gusto te ayudo con todas tus peticiones.

Crea una nueva pregunta en el tema de microsoft excel, en el desarrollo de la pregunta escribe: "para Dante Amor"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas