Macro Para Pasar Datos entre Formularios

Si me pueden ayudar... Tengo en un archivo con 3 formularios... A, B y C, el formulario A tiene un texbox para insertar una fecha y el formulario B tiene 2 textbox y textbox, para insertar fechas, el formulario C contiene un calendario... Lo q quiero es que de cualquier de los otros 2 formularios (A o B) que active al C, este ultimo me coloque la fecha que selecciono en los texbox que requiera según el formulario que tenga activo.

No se si fue muy claro, pero es lo mas puntual que puedo ilustrar el caso.

1 respuesta

Respuesta
2

Seguramente tenés una línea desde el form A que llama al C (lo mismo en B)

UserformC.Show

Bien, entonces justo x encima de esa línea coloca esta otra para pasar la fecha (ajusta el nombre de tus controles)

UserformC.txtFecha = textboxFEcha

UserformC.Show

Sdos y te recomiendo la visita a la sección manuales de mi sitio.

Hola, la linea funciona bien, pero ahora sucede que en los tx que van las fechas que selecciono, no descarga o esconde el formulario C (en el evento change). me sale este error "se ha producido el error '402' en tiempo ejecución: Primero debe cerrar u ocultar el formulario modal superior", este error me sale solo en el formulario A.

Disculpa pero eso es otro problema y tiene que ver con el resto del código que tengas que yo desconozco.

Si preguntas cómo pasar un dato de un form a otro ese es el método directo.

Otro modo sería que en lugar de pasarlo al form, lo pases a una variable declarada pública en un módulo (no en los forms).

Public mifecha as date

Entonces en el 1er UF le pasas el valor:

mifecha = textboxFecha (del A o B)

y en el evento que quieras de tu form C:

txtFecha = mifecha o quizás en el calendar:

Calendar1.value = mifecha

Si tene´s algún evento en estos controles tendrás que evaluar en qué momento le asignas este valor, si estás usando el evento Change quizás debieras cambiarlo x Exit o algún otro... en fin, ya es entrar en el resto del form que desconozco y con mucho gusto podemos seguir en otra consulta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas