Referirme a un formulario

09/06/2006 - 00:24 por Faiverlgr | Informe spam
Buen Día

Ya tengo una variable "String" cargada con el nombre del formulario activo.

Cómo me refiero al formulario a través de la variable, para cerrarlo,
utilizando los eventos HIDE Ó UNLOAD?
Gracias.

FAIVERLGR- BOGOTÁ D.C.- COLOMBIA

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
09/06/2006 - 05:12 | Informe spam
hola, Faiverlgr !

Ya tengo una variable "String" cargada con el nombre del formulario activo.
Como me refiero al formulario a traves de la variable, para cerrarlo, utilizando los eventos HIDE O UNLOAD?



'conociendo' [ahora] que tu aplicacion es en VBA...

1) cambia la variable de tipo 'string' a tipo 'objeto' [p.e.] en un modulo de codigo 'normal'...
Public Formulario_activo As Object

2) asigna a la variable 'el objeto' [userform] que se activa -> en el evento '_activate' de cada userform...
Private Sub UserForm_Activate()
Set Formulario_activo = Me
End Sub

3) destruye el objeto al 'terminarse' el objeto que se cierra -> en el evento '_terminate' de cada userform...
Private Sub UserForm_Terminate()
Set Formulario_activo = Nothing
End Sub

4) usa la variable 'de objeto' [Formulario_activo o como le quieras llamar] en el codigo que descarga/oculta/... al formulario 'en turno'
p.e. con una instruccion +/- como la siguiente:
Sub Cerrar_formulario_activo()
If Not Formulario_activo Is Nothing _
Then Unload Formulario_activo
End Sub

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 Faiverlgr
09/06/2006 - 19:38 | Informe spam
Buen día, Héctor Miguel:
Caso resuelto! Muchas gracias.


"Héctor Miguel" escribió en el mensaje
news:
hola, Faiverlgr !

Ya tengo una variable "String" cargada con el nombre del formulario
activo.
Como me refiero al formulario a traves de la variable, para cerrarlo,
utilizando los eventos HIDE O UNLOAD?



'conociendo' [ahora] que tu aplicacion es en VBA...

1) cambia la variable de tipo 'string' a tipo 'objeto' [p.e.] en un modulo
de codigo 'normal'...
Public Formulario_activo As Object

2) asigna a la variable 'el objeto' [userform] que se activa -> en el
evento '_activate' de cada userform...
Private Sub UserForm_Activate()
Set Formulario_activo = Me
End Sub

3) destruye el objeto al 'terminarse' el objeto que se cierra -> en el
evento '_terminate' de cada userform...
Private Sub UserForm_Terminate()
Set Formulario_activo = Nothing
End Sub

4) usa la variable 'de objeto' [Formulario_activo o como le quieras
llamar] en el codigo que descarga/oculta/... al formulario 'en turno'
p.e. con una instruccion +/- como la siguiente:
Sub Cerrar_formulario_activo()
If Not Formulario_activo Is Nothing _
Then Unload Formulario_activo
End Sub

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

Respuesta Responder a este mensaje
#3 klomkbock
10/06/2006 - 21:29 | Informe spam
Hola Hector Miguel, muchas gracias de nuevo.

Voy a darle unas cuntas vueltas, a ver si saco algo.

Un saludo y hasta pronto.
Ivan
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida