Llamar una variable desde otro modulo

Solo consultas sobre macros y código VBA Excel.

Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Compartir en:
     

Llamar una variable desde otro modulo

Notapor DOOCH » 09 Oct 2006 13:31

Saludos Amigos

Tengo varios módulos, en uno de ellos calculo un valor que almaceno en una variable luego salto a otro módulo medienta un Call y pretendo llamar a aquella variable pero ya no me la reconoce, con toda seguridad es posible hacerlo, pero quisiera saber ¿Cómo?

Gracias
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
DOOCH
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Jun 2005 21:35

Re: Llamar una variable desde otro modulo

Notapor p@li » 09 Oct 2006 16:33

DOOCH
Fijate los ejemplos
el mejor y el que deberias aprovechar es "enviando variables por argumentos", aunque el otro tambien tiene mucha utilidad de vez en cuando.

Saludos.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
p@li
Miembro Frecuente
Miembro Frecuente
 
Registrado: 04 Oct 2005 16:55
Ubicación: Argentina

Re: Llamar una variable desde otro modulo

Notapor DOOCH » 09 Oct 2006 17:44

Gracias P@li

Muy buenos tus ejemplos pero, en realidad donde creo la variable es desde un Formulario y luego quiero llamarlo desde un Módulo y no me funciona ninguno de los métodos que están en tus ejemplos, espero haya otra manera de lograrlo

Gracias
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
DOOCH
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Jun 2005 21:35

Re: Llamar una variable desde otro modulo

Notapor jimcov » 09 Oct 2006 18:32

Hola DOOCH

Mira lo que dice p@li es que debes declarar las variables en forma publica para que este disponible para todos los modulos
Recuerda que siempre debes declarar las variables porque si no lo haces tampoco las reconocen los otros modulos o procedimientos

Public TuVariable as String
Public NombreVariable as Integer

Jimcov
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
jimcov
Miembro Frecuente
Miembro Frecuente
 
Registrado: 01 Ago 2005 01:11

Re: Llamar una variable desde otro modulo

Notapor p@li » 09 Oct 2006 21:24

Exacto Jimcov, nunca explique nada, por falta de tiempo, pero eso esa es la solución que propongo con los ejemplos.
Declarar las variables es fundamental, primero porque de esa manera ahorramos recursos del sistema, y segundo porque podemos hacer este tipo de cosas, tanto privadas como publicas o tambien pueden ser global

Private Variable as TIPOVARIABLE
Public Variable as TIPOVARIABLE
Global Variable as TIPOVARIABLE

En la ayuda de VBA están claramente especificado el uso de cada variable y el funcionamiento de cada tipo de declaracion.

Las variables en VBA pueden ser Variant, String, Duble, Simple, Byte, Long

El que más espacio de memoria necesita es el tipo Variant.
Aquellas variables no declaradas, al momento de ser usadas por primera vez automaticamente Visual Basic las transforma en Variant.
Por eso mejor declararlas, y de pasó podemos jugar con esto de lo público y lo privado, como el derecho!!! jajjaajaja y haste tenemos uno GLOBAL!!!!!! (el derecho internacional), "todo tiene que ver con todo", mejor dejemoslo ahi, ya estoy paranoico con los examenes.

Saludos. Perdon por el divague.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
p@li
Miembro Frecuente
Miembro Frecuente
 
Registrado: 04 Oct 2005 16:55
Ubicación: Argentina

Re: Llamar una variable desde otro modulo

Notapor p@li » 09 Oct 2006 21:43

Ejemplo.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
p@li
Miembro Frecuente
Miembro Frecuente
 
Registrado: 04 Oct 2005 16:55
Ubicación: Argentina

Re: Llamar una variable desde otro modulo

Notapor Adrian » 10 Oct 2006 11:01

Muy Bueno P@li, es lo que llamo en VFP crear una nueva propiedad.
SALU2.xls
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
Adrian
Moderator
Moderator
 
Registrado: 13 Jun 2004 17:24
Ubicación: Chamical La Rioja ARG

Re: Llamar una variable desde otro modulo

Notapor DOOCH » 10 Oct 2006 11:15

Excelente Gracias P@li y jimcov

Clase muy valiosa considerando no tengo el Manual, aprendí­ mucho de Uds son muy amables esto me ayudó mucho

Gracias
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
DOOCH
Miembro Frecuente
Miembro Frecuente
 
Registrado: 08 Jun 2005 21:35

Re: Llamar una variable desde otro modulo

Notapor p@li » 10 Oct 2006 13:08

Si, pero insisto, prefiero pasar los datos por argumentos y devolverlos por funcion

Lo que serí­a asi
en vez de esto:

Public Sub InvertirTextoFunc()
Dim CadenaInvertida As String
Dim i As Long
For i = Len(UserForm1.CadenaTexto) To 1 Step -1
CadenaInvertida = CadenaInvertida & Mid(UserForm1.CadenaTexto, i, 1)
Next
UserForm1.CadenaTexto = CadenaInvertida
End Sub

esto:

Public Function InvertirTextoFunc(ByVal Cadena As String) as String
Dim i As Long
For i = Len(Cadena) To 1 Step -1
InvertirTextoFunc = CadenaInvertida & Mid(Cadena, i, 1)
Next
End Sub


Y para llamar la funcion lo siguiente:

Textbox1=InvertirTextoFunc(Textbox1)

Es mucho más sencillo y fácil de entender.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
p@li
Miembro Frecuente
Miembro Frecuente
 
Registrado: 04 Oct 2005 16:55
Ubicación: Argentina


Compartir en:
     

  • Anuncio
Manual Excel avanzado

Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: Bing [Bot], lreyes y 8 invitados