Configurar la hoja en la que trabajará una Macro

5 envíos / 0 nuevos
Último envío
magtrevino23
Imagen de magtrevino23
Offline
última acción: Hace 2 semanas 1 día
alta: 29/10/2018 - 01:17
Puntos: 45
Configurar la hoja en la que trabajará una Macro

Estuve buscando la manera de hacer un autocompletar para una lista de validación, me encontré el siguiente código:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

'Si la celda elegida es D6:D822 se muestra el Formulario.

    If Not Intersect(Target, Range("D6:D822")) Is Nothing Then

        UserForm1.Show

        'En todo caso no se muestra.

    Else

    End If

End Sub

Me funcionó bien cuando hice una prueba, pero al aplicarlo al archivo real de trabajo, no me funciona porque en el libro real tengo que trabajar con la hoja 3, mientras que en el de prueba lo hice con la hoja 1, no sé si hay una manera de configurar o asignar que se trabaje en la hoja 3.. además los datos a rellenar están en formato de tabla, no sé si haya algún problema con eso.


Gracias

pacomegia
Imagen de pacomegia
Offline
última acción: Hace 1 hora 13 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 9595
El código Private Sub

El código Private Sub Worksheet_SelectionChange responde al evento "SelectionChange" de la hoja en donde se encuentre el código.

¿dónde has puesto este código? tienes que ponerlo en el código de la hoja que te interesa, en tu caso será la Hoja 3

 

Data Tools Suite
datos y tablas con Excel

magtrevino23
Imagen de magtrevino23
Offline
última acción: Hace 2 semanas 1 día
alta: 29/10/2018 - 01:17
Puntos: 45
Muchas Gracias

Gracias, lo verificaré, aunque según yo si lo puse en la hoja 3, solo que cuando estoy en la hoja no me muestra el formulario, es por ello mi duda de si está funcionando o no, sin embargo, si corro la macro desde el "play" de VBA, si me aparece el formulario en la hoja, pero solo una vez, de igual modo verificaré lo que me comentas. 

Muchas Gracias

Cron
Imagen de Cron
Offline
última acción: Hace 2 horas 56 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 11090
Prueba a poner una marca de

Prueba a poner una marca de detención al principio de la rutina, y luego vas avanzando línea a línea con F8.

Así puedes saber si se lanza o no (si no para es que no se ha lanzado), y si lo hace, también puedes saber por qué aparenta no hacer nada (a veces algún error de código o de programación hace que salte al final o que no ejecute nada)

Un saludo

magtrevino23
Imagen de magtrevino23
Offline
última acción: Hace 2 semanas 1 día
alta: 29/10/2018 - 01:17
Puntos: 45
Gracias

Muchas Gracias por la opción, estuve revisando el código y lo que pasó fue que lo había asignado a un evento erroneo Sellado y por eso no me estaba funcionando.

Muchas gracias por el apoyo