Variable Globales

19/08/2008 - 21:58 por Archivo Plano | Informe spam
Estoy abriendo un archivo de excel el cual despliega un formulario de entrada
en el que valido mediante dos TextBox el nombre de usuario y una contraseña.
Una vez el usuario se valida accede a determinada hoja donde encuentra un
COMBO BOX con una serie de opciones (Menú Principal).

Al seleccionar una opción del combo box automaticamente lo lleva a
determinada Hoja donde el usuario visualizará un indicador. Para que el
usuario pueda regresar a su Menú de opciones se tiene un Boton (Regreso)
(Command Button), el cual lo debe llevar a este.

Mi pregunta es la siguiente:

Hay algunos usuarios que deben verificar el mismo indicador, el
inconveniente lo tengo en el momento de posicionarlo en su Menú Ppal
respectivo. La idea es controlarlo mediante el Text Box en el cual se
registro el usuario y mediante IF anidados validar usuario por usuario para
dejarlo en el menú correspondiente. pero una vez minimixo el formulario de
entrada y selecciono la hoja del indicador ha visualizar se pierde el valor
de dicho usuario. Me gustaría saber como hago para no perder el usuario que
se valida?? como manejo la variable globales la verdad no he podido.

Espero haber sido claro.

Agradezco de antemano la colaboración prestada

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
19/08/2008 - 22:26 | Informe spam
hola, 'anonimo/a' !

puedes evitar que las variables globales se borren al (re)abrir un formulario en excel...

1) declarandolas como publicas (de preferencia) en un modulo de codigo normal ...
2) asegurandote que ya se hubieran asignado cuando se presente el formulario y...
3) asegurandote que NO se restablezcan por efectos de algun otro procedimiento
4) (opcionalmente) podrias guardarlas/tomarlas (directamente) de celdas en alguna hoja

saludos,
hector.

__ OP __
Estoy abriendo un archivo de excel el cual despliega un formulario de entrada en el que
valido mediante dos TextBox el nombre de usuario y una contrasena.
Una vez el usuario se valida accede a determinada hoja donde encuentra un COMBO BOX con una serie de opciones (Menu Principal).
Al seleccionar una opcion del combo box automaticamente lo lleva a determinada Hoja
donde el usuario visualizara un indicador. Para que el usuario pueda regresar a su Menu de opciones se tiene un Boton (Regreso)
(Command Button), el cual lo debe llevar a este.
Mi pregunta es la siguiente:
Hay algunos usuarios que deben verificar el mismo indicador
el inconveniente lo tengo en el momento de posicionarlo en su Menu Ppal respectivo.
La idea es controlarlo mediante el Text Box en el cual se registro el usuario
y mediante IF anidados validar usuario por usuario para dejarlo en el menu correspondiente.
pero una vez minimixo el formulario de entrada y selecciono la hoja del indicador ha visualizar se pierde el valor de dicho usuario.
Me gustaria saber como hago para no perder el usuario que se valida?? como manejo la variable globales la verdad no he podido.
Respuesta Responder a este mensaje
#2 Archivo Plano
19/08/2008 - 23:11 | Informe spam
"Héctor Miguel" wrote:

hola, 'anonimo/a' !

puedes evitar que las variables globales se borren al (re)abrir un formulario en excel...

1) declarandolas como publicas (de preferencia) en un modulo de codigo normal ...
2) asegurandote que ya se hubieran asignado cuando se presente el formulario y...
3) asegurandote que NO se restablezcan por efectos de algun otro procedimiento
4) (opcionalmente) podrias guardarlas/tomarlas (directamente) de celdas en alguna hoja

saludos,
hector.

__ OP __
> Estoy abriendo un archivo de excel el cual despliega un formulario de entrada en el que
> valido mediante dos TextBox el nombre de usuario y una contrasena.
> Una vez el usuario se valida accede a determinada hoja donde encuentra un COMBO BOX con una serie de opciones (Menu Principal).
> Al seleccionar una opcion del combo box automaticamente lo lleva a determinada Hoja
> donde el usuario visualizara un indicador. Para que el usuario pueda regresar a su Menu de opciones se tiene un Boton (Regreso)
> (Command Button), el cual lo debe llevar a este.
> Mi pregunta es la siguiente:
> Hay algunos usuarios que deben verificar el mismo indicador
> el inconveniente lo tengo en el momento de posicionarlo en su Menu Ppal respectivo.
> La idea es controlarlo mediante el Text Box en el cual se registro el usuario
> y mediante IF anidados validar usuario por usuario para dejarlo en el menu correspondiente.
> pero una vez minimixo el formulario de entrada y selecciono la hoja del indicador ha visualizar se pierde el valor de dicho usuario.
> Me gustaria saber como hago para no perder el usuario que se valida?? como manejo la variable globales la verdad no he podido.



Hector Miguel:

Disculpame. Mi nombre es Mao, la verdad es que me gustaría que me ampliara
con un ejemplo la explicación que me enviaste pues realmente he realizado
algunos pasos de los que me enviaste pero pierdo el valor d ela variable.

Gracias Mao.



Respuesta Responder a este mensaje
#3 Héctor Miguel
20/08/2008 - 03:33 | Informe spam
hola, Mao ?

... me gustaria que me ampliara con un ejemplo la explicacion que me enviaste
... he realizado algunos pasos de los que me enviaste pero pierdo el valor de la variable.



copia/pega (o escribe) las siguientes lineas en los modulos de codigo indicados
estoy suponiendo un userform con solo un control "label" y un commandbutton para cambiar una variable string
que sirve para mostrar un saludo a quien se haya "identificado" al abrirse el libro (o modificado por el commandbuton)

cada vez que muestres el formulario, el saludo ira dirigido a la ultima persona conocida (o registrada)

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.

1) en el modulo de tu libro (ThisWorkbook)

Private Sub Workbook_Open()
PreguntaQuienEs
End Sub

2) en un modulo de codigo normal:

Option Private Module
Public QuienSoy As String
Sub PreguntaQuienEs()
With Application
QuienSoy = .Trim(.Proper(InputBox("Indica cual es tu nombre", "", "soy yo")))
End With
End Sub

3) en el modulo de codigo del formulario

Private Sub UserForm_Initialize()
ActualizaSaludo
End Sub
Private Sub ActualizaSaludo()
Label1.Caption = "Hola, " & IIf(Len(QuienSoy), QuienSoy, "Anonimo") & " !!!"
End Sub
Private Sub CommandButton1_Click()
PreguntaQuienEs
ActualizaSaludo
End Sub

__ OP __
puedes evitar que las variables globales se borren al (re)abrir un formulario en excel...

1) declarandolas como publicas (de preferencia) en un modulo de codigo normal ...
2) asegurandote que ya se hubieran asignado cuando se presente el formulario y...
3) asegurandote que NO se restablezcan por efectos de algun otro procedimiento
4) (opcionalmente) podrias guardarlas/tomarlas (directamente) de celdas en alguna hoja

__ OP __
Estoy abriendo un archivo de excel el cual despliega un formulario de entrada en el que
valido mediante dos TextBox el nombre de usuario y una contrasena.
Una vez el usuario se valida accede a determinada hoja donde encuentra un COMBO BOX con una serie de opciones (Menu Principal).
Al seleccionar una opcion del combo box automaticamente lo lleva a determinada Hoja
donde el usuario visualizara un indicador. Para que el usuario pueda regresar a su Menu de opciones se tiene un Boton (Regreso)
(Command Button), el cual lo debe llevar a este.
Mi pregunta es la siguiente:
Hay algunos usuarios que deben verificar el mismo indicador
el inconveniente lo tengo en el momento de posicionarlo en su Menu Ppal respectivo.
La idea es controlarlo mediante el Text Box en el cual se registro el usuario
y mediante IF anidados validar usuario por usuario para dejarlo en el menu correspondiente.
pero una vez minimixo el formulario de entrada y selecciono la hoja del indicador ha visualizar se pierde el valor de dicho usuario.
Me gustaria saber como hago para no perder el usuario que se valida?? como manejo la variable globales la verdad no he podido.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida