variable publica

08/02/2006 - 17:34 por David | Informe spam
tengo 2 macros que he grabado y luego le hice algunos arreglos
en las 2 macros he creado en la parte (GENERAL) - (DECLARACIONES) una
variable publica "contador" (el mismo nombre para las 2)

los 02 macros llaman a un formulario, alli le doy a CONTADOR un valor por
decir 3
y luego regresa al procedimiento desde donde fue llamado y continua el
programilla

Cuando ejecuto por primera vez una de las macros funciona bien
Y luego ejecuto la otra.
Y es entonces que me sale el mensaje: "se ha detectado un mombre ambiguo:
CONTADOR".
Este mensaje sale justo cuando ya estoy en el formulario
y se intenta ejecutar esta sentencia:
CONTADOR = ListBox1.ListIndex + 1

¿alguna sugerencia?
en todo caso donde puedo definir la variable CONTADOR como publica

gracias
DAVID
 

Leer las respuestas

#1 jose
08/02/2006 - 17:45 | Informe spam
La ambigüedad se deriva de haberla definido en los dos módulos.


El 'campo de juego' de una variable depende del lugar y de la opcion que
utilices para definirla.
Si la defines DENTRO de un procedimiento como Private el 'campo de juego' de
esa variable es SOLO ese procedimiento, si la defines como Public el campo
de juego son TODOS los procedimientos de ese módulo de programación.
Si la defines FUERA, al comienzo del módulo como Private el 'campo de juego'
es esa variable es SÓLO ese módulo, si la defines como Public el campo de
juego son todos los procedimientos en todos los módulos.

Además de esto debes tener en cuenta 'la vida temporal' de una variable.
Las variables se borran, salvo que se definan como STATIC, cuando finaliza
el módulo donde han sido creadas.



"David" escribió en el mensaje
news:
tengo 2 macros que he grabado y luego le hice algunos arreglos
en las 2 macros he creado en la parte (GENERAL) - (DECLARACIONES) una
variable publica "contador" (el mismo nombre para las 2)

los 02 macros llaman a un formulario, alli le doy a CONTADOR un valor por
decir 3
y luego regresa al procedimiento desde donde fue llamado y continua el
programilla

Cuando ejecuto por primera vez una de las macros funciona bien
Y luego ejecuto la otra.
Y es entonces que me sale el mensaje: "se ha detectado un mombre ambiguo:
CONTADOR".
Este mensaje sale justo cuando ya estoy en el formulario
y se intenta ejecutar esta sentencia:
CONTADOR = ListBox1.ListIndex + 1

¿alguna sugerencia?
en todo caso donde puedo definir la variable CONTADOR como publica

gracias
DAVID

Preguntas similares