** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Navegar entre formularios
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoNavegar entre formularios

 Responder Responder
Autor
Mensaje
rocjfl-b Ver desplegable
Colaborador
Colaborador


Unido: 19/Abril/2006
Localización: España
Estado: Sin conexión
Puntos: 669
Enlace directo a este mensaje Tema: Navegar entre formularios
    Enviado: 21/Noviembre/2019 a las 21:38
Hola a todos.
Simultáneamente tengo abiertos varios formularios divididos.
Como puedo, por código, ir de un formulario a otro ?.
Saludos.
Arriba
teogf Ver desplegable
Asiduo
Asiduo


Unido: 09/Febrero/2007
Localización: España
Estado: Sin conexión
Puntos: 464
Enlace directo a este mensaje Enviado: 21/Noviembre/2019 a las 22:42
Hola, 

En vba hay varias formas. Algunas de ellas son:

- Form_frmFormularioPrueba.setfocus
- Forms!frmFormularioPrueba.setfocus
- Forms!frmFormularioPrueba.Form.setfocus
- Docmd.SelectObjetc acForm, "frmFormularioPrueba"

Y alguno más habrá que se me escapa.



Arriba
rocjfl-b Ver desplegable
Colaborador
Colaborador


Unido: 19/Abril/2006
Localización: España
Estado: Sin conexión
Puntos: 669
Enlace directo a este mensaje Enviado: 21/Noviembre/2019 a las 23:39
Gracias teogf.
Desde un botón de comando del Formulario_A:

Private Sub comand100_Click()
If EstaCargado("Formulario_B") then
Docmd.SelectObject as Form, "Formulario_B"
endif
End sub

No consigo ir al Formulario_B

Arriba
mounir Ver desplegable
Colaborador
Colaborador


Unido: 09/Febrero/2009
Localización: Asturias-España
Estado: Sin conexión
Puntos: 6479
Enlace directo a este mensaje Enviado: 21/Noviembre/2019 a las 23:53
Hola!

Private Sub comand100_Click()
   If EstaCargado("Formulario_B") then
    DoCmd.OpenForm "Formulario_B"
   End If
End Sub


Edito:-
Método DoCmd. SelectObject lo que hace es seleccionar un objeto (Puede usar el método SelectObject para seleccionar un objeto de base de datos especificado.
La acción SeleccionarObjeto funciona con cualquier objeto de Access que pueda recibir el enfoque. Esta acción asigna el enfoque al objeto especificado y muestra el objeto si está oculto.)


Editado por mounir - 21/Noviembre/2019 a las 23:58
Un Saludo.
Arriba
rocjfl-b Ver desplegable
Colaborador
Colaborador


Unido: 19/Abril/2006
Localización: España
Estado: Sin conexión
Puntos: 669
Enlace directo a este mensaje Enviado: 22/Noviembre/2019 a las 06:48
¡ Funciona mounir, muchas gracias !,  no creí que para ir a un formulario ya abierto tendría que utilizar un método para volver abrirlo.
Gracias teogf.
Un saludo a todos.
Se puede cerrar el hilo
Arriba
mounir Ver desplegable
Colaborador
Colaborador


Unido: 09/Febrero/2009
Localización: Asturias-España
Estado: Sin conexión
Puntos: 6479
Enlace directo a este mensaje Enviado: 22/Noviembre/2019 a las 10:11
Hola!

No me había dado cuenta de que los formularios están abiertos, entonces tu código hay un mínimo error y por eso no te funcionaba:

Docmd.SelectObject as Form, "Formulario_B"

donde pone "as Form" debes poner "AcForm"
quedaría:

Private Sub comand100_Click()
     If EstaCargado("Formulario_B") then
        Docmd.SelectObject acForm, "Formulario_B"
     End If
End Sub

Un Saludo.
Arriba
rocjfl-b Ver desplegable
Colaborador
Colaborador


Unido: 19/Abril/2006
Localización: España
Estado: Sin conexión
Puntos: 669
Enlace directo a este mensaje Enviado: 27/Noviembre/2019 a las 22:16
Gracias de nuevo mounir
Se puede cerrar el hilo
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable