De Registros y Formulaios

10/05/2010 - 21:11 por Juan Carlos Ramos | Informe spam
Hola a todos;

Mi problema es el siguiente; Tengo editados dos formularios (A y B),
con uno de los diversos campos en común; "Num Suc". Quiero al hacer doble
click en el cuadro de texto del campo "Num Suc" de un formulario, obtener la
información del registro correspondiente a ese cuadro de texto en el otro
formulario.

He intentado solucionar el problema con el siguiente código:

Private Sub Num_Suc_DblClick(Cancel As Integer)

DoCmd.OpenForm "FormularioB", acNormal
DoCmd.GoToRecord , "FormularioB", acGoTo, Num_Suc

End Sub

De esta manera consigo abrir el 2º formulario pero el registro que
obtengo es el correspondiente al ordinal de este formulario asociado al
campo Num Suc donde he efectuado el doble click del formulario primero.
Cuando lo que prentendo obtener es el propio registro asociado al campo "Num
Suc" del formulario primero.

Deciros que mis conocimientos de access son rudimentarios por lo que os
ruego simplicidad en vuestros comentarios.

Muchas gracias por la colaboración prestada.

Juan Carlos

Preguntas similare

Leer las respuestas

#1 Conrrad
10/05/2010 - 22:56 | Informe spam
El 10/05/2010 21:11, Juan Carlos Ramos escribió:
Hola a todos;

Mi problema es el siguiente; Tengo editados dos formularios (A
y B), con uno de los diversos campos en común; "Num Suc". Quiero al
hacer doble click en el cuadro de texto del campo "Num Suc" de un
formulario, obtener la información del registro correspondiente a ese
cuadro de texto en el otro formulario.

He intentado solucionar el problema con el siguiente código:

Private Sub Num_Suc_DblClick(Cancel As Integer)

DoCmd.OpenForm "FormularioB", acNormal
DoCmd.GoToRecord , "FormularioB", acGoTo, Num_Suc

End Sub

De esta manera consigo abrir el 2º formulario pero el registro que
obtengo es el correspondiente al ordinal de este formulario asociado
al campo Num Suc donde he efectuado el doble click del formulario
primero. Cuando lo que prentendo obtener es el propio registro
asociado al campo "Num Suc" del formulario primero.

Deciros que mis conocimientos de access son rudimentarios por lo
que os ruego simplicidad en vuestros comentarios.

Muchas gracias por la colaboración prestada.

Juan Carlos




Hola, pruébalo así:

Private Sub Num_Suc_DblClick(Cancel As Integer)

DoCmd.OpenForm "FormularioB", , , "[Num Suc]=" & [Num Suc]

End Sub



Explicación:

En la línea que abre el formulario, el primer "Num Suc" hace referencia
al campo Num Suc del formulario que vas a abrir y le estamos diciendo
que coincida con el campo, segundo "Num Suc", del formulario actual.

Saludos,

Blog sobre Access: http://accessforlive.blogspot.com

Angel Gil
conrrad69arrobagmailpuntocom
Cartagena

Animo.
Hay cosas peores que levantarse por la mañana. Por ejemplo, no levantarse por la mañana.
Respuesta Responder a este mensaje
#2 emiliov
10/05/2010 - 23:17 | Informe spam
Hola Juan

Sabes en estos días Juan respondio algo parecido solo que con un botón de
comando, pero es lo mismo solo el evento es el que debes cambiar

En el código asociado a ese evento tienes que poner un código parecido a este:

DoCmd.OpenForm "Elotrofirmulario", , , "[Num_Suc]= " & Me.Num_Suc

teniendo en cuenta

- Elotrofirmulario se refiere al nombre del formulario a abrir
- [Num_Suc] se refiere al nombre del campo codigo en la tabla Elotrofirmulario
- Me.Num_Suc tiene que ser el nombre del control del formulario abierto

consulta en la ayuda de Visual Basic el comando OpenForm del método DoCmd
Saludos,
Juan M. Afan de Ribera

O si quieres que lo haga access solo, pues usando el asistente para botones.
Creas un nuevo boton con el asistente, operaciones con formulario, abrir
formulario, buscas y seleccionas el formulario datos de salud, siguiente,
despues seleccionas: Abrir el formulario y buscar los datos especificos que
se van a mostrar, siguente, seleccionas los dos datos comunes en ambas tablas
y le das al boton <-> y siguente hasta terminar
Respuesta Responder a este mensaje
#3 Juan Carlos Ramos
11/05/2010 - 17:36 | Informe spam
Gracias amigos;

Que fácil hacéis lo que para los profanos es un muro infranqueable.

Saludos a todo el grupo

Juan Carlos Ramos




"emiliov" escribió en el mensaje de
noticias:
Hola Juan

Sabes en estos días Juan respondio algo parecido solo que con un botón de
comando, pero es lo mismo solo el evento es el que debes cambiar

En el código asociado a ese evento tienes que poner un código parecido a
este:

DoCmd.OpenForm "Elotrofirmulario", , , "[Num_Suc]= " & Me.Num_Suc

teniendo en cuenta

- Elotrofirmulario se refiere al nombre del formulario a abrir
- [Num_Suc] se refiere al nombre del campo codigo en la tabla
Elotrofirmulario
- Me.Num_Suc tiene que ser el nombre del control del formulario abierto

consulta en la ayuda de Visual Basic el comando OpenForm del método DoCmd
Saludos,
Juan M. Afan de Ribera

O si quieres que lo haga access solo, pues usando el asistente para
botones.
Creas un nuevo boton con el asistente, operaciones con formulario, abrir
formulario, buscas y seleccionas el formulario datos de salud, siguiente,
despues seleccionas: Abrir el formulario y buscar los datos especificos
que
se van a mostrar, siguente, seleccionas los dos datos comunes en ambas
tablas
y le das al boton <-> y siguente hasta terminar



Respuesta Responder a este mensaje
#4 Conrrad
11/05/2010 - 19:28 | Informe spam
:)

El 11/05/2010 17:36, Juan Carlos Ramos escribió:
Gracias amigos;

Que fácil hacéis lo que para los profanos es un muro infranqueable.

Saludos a todo el grupo

Juan Carlos Ramos




"emiliov" escribió en el mensaje
de noticias:
Hola Juan

Sabes en estos días Juan respondio algo parecido solo que con un
botón de
comando, pero es lo mismo solo el evento es el que debes cambiar

En el código asociado a ese evento tienes que poner un código
parecido a este:

DoCmd.OpenForm "Elotrofirmulario", , , "[Num_Suc]= " & Me.Num_Suc

teniendo en cuenta

- Elotrofirmulario se refiere al nombre del formulario a abrir
- [Num_Suc] se refiere al nombre del campo codigo en la tabla
Elotrofirmulario
- Me.Num_Suc tiene que ser el nombre del control del formulario abierto

consulta en la ayuda de Visual Basic el comando OpenForm del método
DoCmd
Saludos,
Juan M. Afan de Ribera

O si quieres que lo haga access solo, pues usando el asistente para
botones.
Creas un nuevo boton con el asistente, operaciones con formulario, abrir
formulario, buscas y seleccionas el formulario datos de salud,
siguiente,
despues seleccionas: Abrir el formulario y buscar los datos
especificos que
se van a mostrar, siguente, seleccionas los dos datos comunes en
ambas tablas
y le das al boton <-> y siguente hasta terminar









Saludos,

Blog sobre Access: http://accessforlive.blogspot.com

Angel Gil
conrrad69arrobagmailpuntocom
Cartagena

Animo.
Hay cosas peores que levantarse por la mañana. Por ejemplo, no levantarse por la mañana.
Respuesta Responder a este mensaje
#5 Ramon Viggiani
16/05/2010 - 18:26 | Informe spam
Saludos Juan Carlos.

Puedes resolver el problemas de diferentes maneras, con SQL o con una
consulta. Por mi parte de brindo la opcion de la consulta y es la siguiente:

Crea una consulta con la tabla que usas en el formulario y coloca el campo
Num_Suc y en fila de criterio haces referencia al campo "Num_Suc" que tienes
en el formulario A (o sea, donde le tienes que dar clic o doble clic para que
aparezca el otro), de esta manera creas una consulta que te filtra los datos
por el numero de sucursal al que le das clic. Luego, en el Formulario B
estableces el origen de sus datos en esa conculta y asi, cuando se abra, se
abrira con el registro desde el cual le das clic.

saludos y si quieres mas detalles me escribes a

"Juan Carlos Ramos" escribió:

Hola a todos;

Mi problema es el siguiente; Tengo editados dos formularios (A y B),
con uno de los diversos campos en común; "Num Suc". Quiero al hacer doble
click en el cuadro de texto del campo "Num Suc" de un formulario, obtener la
información del registro correspondiente a ese cuadro de texto en el otro
formulario.

He intentado solucionar el problema con el siguiente código:

Private Sub Num_Suc_DblClick(Cancel As Integer)

DoCmd.OpenForm "FormularioB", acNormal
DoCmd.GoToRecord , "FormularioB", acGoTo, Num_Suc

End Sub

De esta manera consigo abrir el 2º formulario pero el registro que
obtengo es el correspondiente al ordinal de este formulario asociado al
campo Num Suc donde he efectuado el doble click del formulario primero.
Cuando lo que prentendo obtener es el propio registro asociado al campo "Num
Suc" del formulario primero.

Deciros que mis conocimientos de access son rudimentarios por lo que os
ruego simplicidad en vuestros comentarios.

Muchas gracias por la colaboración prestada.

Juan Carlos


.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida