Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

pasar valor de un formulario a otro

Estas en el tema de pasar valor de un formulario a otro en el foro de Visual Basic clásico en Foros del Web. hola alguien me puede decir por favor como le podria hacer para que:formulario_1 se da de alta por ejemplo un precio "5" (este form ya ...
  #1 (permalink)  
Antiguo 15/07/2008, 07:41
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Pregunta pasar valor de un formulario a otro

hola alguien me puede decir por favor como le podria hacer para que:formulario_1 se da de alta por ejemplo un precio "5" (este form ya lo tengo)y este valor al dar de alta se guarda en "tabla_1" ,asi que quiero que el último dato que se haya guardado en este caso el "5" al entrar al formulario_2 este valor aparezca por defalult para que no se esté escribiendo ese valor cada vez que entre al formulario_2 ya que lo utilizaré constantemente hasta que en dado caso se cambiara el precio y se diera de alta el"7" entonces autómaticamente se sustituya al anterior y asi sucesivamente ,no se si me explique bien ,pero necesito jalar el último valor de tabla_1 y aparezca en el form_2 USO vba
  #2 (permalink)  
Antiguo 15/07/2008, 07:45
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: pasar valor de un formulario a otro

Puedes poner una variable pública al que colocas el valor cada vez que sales de formulario_1, luego, al entrar a formulario_2 recoges ese valor...
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 15/07/2008, 08:38
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Pregunta Respuesta: pasar valor de un formulario a otro

Hola David!
Soy nueva en esto asi que par declarar la variable publica sería algo asi como Public precio As Integer ?? y esto lo pondría debajo de Option Compare Database esto claro en VBA???
  #4 (permalink)  
Antiguo 15/07/2008, 08:48
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Respuesta: pasar valor de un formulario a otro

Exactamente, debes declararlo así. Desde allí puedes usarlo desde cualquier parte del prorama. ¿Has logrado?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 15/07/2008, 08:54
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Respuesta: pasar valor de un formulario a otro

Pues estoy en eso ya lo puse asi como te comenté ahora... precio sería el valor que di de alta en form_1 supongo que debo poner en propiedades del formulario al salir que guarde ese valor en "precio "? eso como es y después como le digo que ese "precio" al cargar esté en form _2?? me podrias seguir orientando jej
  #6 (permalink)  
Antiguo 15/07/2008, 09:00
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: pasar valor de un formulario a otro

Puedes poner en el evento UnLoad del Form que te guarde el precio en la variable.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #7 (permalink)  
Antiguo 15/07/2008, 09:07
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Respuesta: pasar valor de un formulario a otro

ok gracias lo pondría entonces en "al descargar" pero como sería la sintaxis de guardar en ese variable??
  #8 (permalink)  
Antiguo 15/07/2008, 09:18
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: pasar valor de un formulario a otro

Algo así:
Código PHP:
precio Me!campo 
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #9 (permalink)  
Antiguo 15/07/2008, 09:52
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Respuesta: pasar valor de un formulario a otro

En form_1 puse al descargar....(refiriendose a la variable ) "precio = Me!precio" (campo en mi tabla=precio), despues en el form_2 puse en propiedades del formulario al cargar .. Me.Texto79.Value = precio (texto79 es el campo de texto donde quiero que se despliegue ese valor) pero no hace nada
  #10 (permalink)  
Antiguo 15/07/2008, 09:57
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Respuesta: pasar valor de un formulario a otro

¿Has intentado ejecutar paso a paso para saber si realmente está tomando el valor en la variable precio y luego también para saber si está pasando ese valor al campo en formulario_2?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #11 (permalink)  
Antiguo 15/07/2008, 10:12
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Respuesta: pasar valor de un formulario a otro

Bueno ya estoy checando parte por parte y en el form_1 que es donde doy alta el precio (funciona mi form) pero después de que pongo en sus propiedades del form "precio = Me!precio" cuando vuelvo a entrar y qiero dar de alta un valor nuevo no me deja ahora y sale un mensaje de "la expresión 'al hacer clic! que introdujo como valor de la propiedad de evento produjo un error:el midulo miembro ya existe en un modulo de objeto del que proviene
  #12 (permalink)  
Antiguo 15/07/2008, 10:24
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: pasar valor de un formulario a otro

¿Dónde estás declarando la variable precio?. Deberías ponerlo en un Módulo y quizás con un nombre diferente al campo.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #13 (permalink)  
Antiguo 15/07/2008, 10:33
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Respuesta: pasar valor de un formulario a otro

pues entre a donde dice General y al lado dice declaraciones-----Option Compare Database ahi pero entonces lo pongo en un modulo deja checar
  #14 (permalink)  
Antiguo 15/07/2008, 11:03
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Pregunta Respuesta: pasar valor de un formulario a otro

ya tengo el modulo y no aparece ya el mensaje de error anterior y si puedo dar de alta otro precio ahora el problema es que al salir del form_1 me marca un error "uso no válido de null" y me marca el error en pre = Me!precio (propiedades del formulario al descargar)
  #15 (permalink)  
Antiguo 15/07/2008, 11:10
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: pasar valor de un formulario a otro

Prueba a poner Me.precio, a mi me funcionó de esa manera.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #16 (permalink)  
Antiguo 15/07/2008, 11:28
 
Fecha de Ingreso: julio-2002
Ubicación: stgo rec
Mensajes: 438
Antigüedad: 21 años, 9 meses
Puntos: 3
Respuesta: pasar valor de un formulario a otro

agrega un modulo y la declaras ahi, en las declaraciones, el ambito es para todos los formularios

asi

Global mi_variable as string
__________________
Saludos
Leo
  #17 (permalink)  
Antiguo 15/07/2008, 12:02
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Respuesta: pasar valor de un formulario a otro

Ok ,gracias ya probé
de las 2 maneras y no marca error en el form_1 (en propiedades del form al descargar.. pre = Me.precio y ya tengo el modulo: Public pre As Integer)lo que pasa es que aún no logro pasar ese valor que se supone guarda en "pre" al cargar ...el form2 y ya intenté poniendo en este al cargar..... campo1.Value = pre
  #18 (permalink)  
Antiguo 15/07/2008, 12:05
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Respuesta: pasar valor de un formulario a otro

¿En el form_2 tienes un TextBox o un campo de una base de datos? ¿Cómo pones el código en el evento Load?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #19 (permalink)  
Antiguo 15/07/2008, 12:16
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Respuesta: pasar valor de un formulario a otro

solo un cuadro de texto en el que quiero que se refleje el "pre" esto en propiedades al cargar.. en el form2 por eso le puse cuadro1.Value = pre o con Me.cuadro1.Value = pre pero nada!!
  #20 (permalink)  
Antiguo 15/07/2008, 12:20
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: pasar valor de un formulario a otro

Yo lo probé y me funcionó perfectamente, puse en la ventana un TextBox con el nombre Texto0 y luego puse este código en la ventana:
Código:
Private Sub Form_Load()
Texto0.Value = price
End Sub
Suponiendo que price se llama la variable pública donde guardaste los datos.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #21 (permalink)  
Antiguo 15/07/2008, 12:48
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Exclamación Respuesta: pasar valor de un formulario a otro

modulo:
Option Compare Database
Public pre As Integer

form1:
Private Sub Form_Unload(Cancel As Integer)
pre = Me.precio
End Sub


form2:

Private Sub Form_Load()
DoCmd.Maximize
Texto79.Value = pre
End Sub

volvi a checar todo y pues asi lo tengo ,no se entonces porque no me aparece ningún dato en el campo del form_2
  #22 (permalink)  
Antiguo 15/07/2008, 12:53
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: pasar valor de un formulario a otro

Coloca:
Código:
MsgBox pre
Antes de pasar el valor al TextBox, para saber si realmente tienes un valor asignado a esa variable.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #23 (permalink)  
Antiguo 15/07/2008, 13:10
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Respuesta: pasar valor de un formulario a otro

pues aparece el mensaje de "0" y es que en el form_1 tengo para dar alta precio: un cuadro de texto para ingresar el precio (con valor predeterminado de "0" en el cuadro de t.) por lo que veo entonces este valor es el que está jalando.....bueno además tengo un subformulario en donde una ves que puse el precio y doy en el botón aceptar se agrega en ese subformulario entoncesssssss ahi está el detalle ,como me refiero al precio que se anexó al subformulario porque aunque haya puesto al descargar pre = Me.precio no agarra ese valor sino despues de cerrar el form_1 como vualve a ponerse el cuadro con valor de "0"??
  #24 (permalink)  
Antiguo 15/07/2008, 13:13
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: pasar valor de un formulario a otro

Pues bien, al momento de pasar el valor al subformulario puedes asignar el valor a la variable pre...
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #25 (permalink)  
Antiguo 16/07/2008, 10:52
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Pregunta Respuesta: pasar valor de un formulario a otro

Hola David!! gracias por tu ayuda ..pues hice un archivo independientemente del sistema que estoy haciendo para probar primero y después probar en el otro ...y si me sale... eso si abro uno primero y después el otro form, porque si abro directamente el form2 no se ven los datos y eso es lo que necesito... también intenté poniendo un botón en el form1 para abrir desde ahi el otro y tampoco ..alguna otra idea???
Grax y salu2!!
  #26 (permalink)  
Antiguo 16/07/2008, 11:02
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: pasar valor de un formulario a otro

Pues bien, la clave está en guardar el valor en la variable pre en el momento correcto, intenta usar el evento Change del campo en el Form_1 y en ese momento guarda el valor de la variable...

EDITO: Debes usar el evento que más convenga en tu caso.

Y es lógico que debas abrir primero el form_1 para que funcione, ya que si no se abre no se guardará ningún valor en la variable 'pre'.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #27 (permalink)  
Antiguo 16/07/2008, 14:11
 
Fecha de Ingreso: abril-2008
Mensajes: 44
Antigüedad: 16 años
Puntos: 0
Respuesta: pasar valor de un formulario a otro

Ya quedó ya lo cheque en mi sistema y lo hace como te comenté puse un botón en el form1 al hacer clic ....que guardara el dato ,cerrara ese formulario y me abriera el form2.
Nuevamente gracias David!!
  #28 (permalink)  
Antiguo 16/07/2008, 14:15
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Exclamación Respuesta: pasar valor de un formulario a otro

De nada, me alegra que hayas logrado dar con la solución.

Saludos
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:06.