Access - Dudas sobre Instrucciones SQL

 
Vista:

Dudas sobre Instrucciones SQL

Publicado por Javier (6 intervenciones) el 11/04/2005 20:04:28
Hola a todos.
A ver si me explico. Tengo una base de datos con distintos formularios y subformularios. Todos tienen un campo en común llamado 'Nº Exp', y todas las tablas están relaciondas entre sí con ese campo. El formulario principal llamado 'Control de Expedientes' tiene distintas páginas que son los distintos subformularios. Si estoy en un expediente determinado al entrar en una de esas páginas en el campo 'Nº Exp' ya pone el número de expediente en el que me encuentro. Hasta ahí todo bien. El problema es que además de esas páginas tambien hay un 'Botón de Comando' que al pulsarlo me manda a un formulario llamado '4-Control de Demoras'. Pues bien, aunque la tabla correspondiente está bien relacionada, esté en el expediente que esté el campo 'Nº Exp' me sale en blanco y tengo que meter a mano ese dato.
He utilizado las siguientes expresiones en el evento 'Al hacer clic' del botón que abre el formulario para intentar remediar esto. Esta solución me la dió una persona en otro foro pero sigo sin entender nada. No me da ningún error pero no me hace lo que voy buscando. Decir que estoy verde sería ponerme por las nubes y echarme flores a mi mismo, la realidad es que no tengo ni idea. Si puedes ayudarme quedaría muy agradecido.

Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "4-CONTROL DE DEMORAS"
stLinkCriteria = "[Nº Exp]=" & "'" & Me![Nº Exp] & "'"
DoCmd.OpenForm stDocName, , , stLinkCriteria

(*) '4-CONTROL DE DEMORAS' es el nombre tanto de la tabla como del formulario en cuestión.

Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Pasar el número de expediente a otro formulario al hacer clic en un botón

Publicado por Alejandro (4142 intervenciones) el 30/05/2023 23:07:47
Para pasar el número de expediente al formulario "4-Control de Demoras" al hacer clic en el botón, puedes utilizar el siguiente código en el evento "Al hacer clic" del botón:

1
2
3
4
5
6
7
8
9
10
11
12
13
Private Sub btnAbrirControlDemoras_Click()
    Dim stDocName As String
    Dim stLinkCriteria As String
 
    ' Obtener el número de expediente del formulario actual
    Dim numExp As String
    numExp = Me![Nº Exp]
 
    ' Abrir el formulario "4-Control de Demoras" y pasar el número de expediente como criterio de enlace
    stDocName = "4-Control de Demoras"
    stLinkCriteria = "[Nº Exp]='" & numExp & "'"
    DoCmd.OpenForm stDocName, , , stLinkCriteria
End Sub

Asegúrate de que el nombre del botón en tu formulario es "btnAbrirControlDemoras" y que el nombre del campo de número de expediente es "[Nº Exp]". Además, asegúrate de que el nombre del formulario y la tabla "4-Control de Demoras" coincidan.

Al hacer clic en el botón, este código obtendrá el número de expediente del formulario actual y lo pasará como criterio de enlace al abrir el formulario "4-Control de Demoras". Esto permitirá que el campo "Nº Exp" en el formulario "4-Control de Demoras" muestre el número de expediente correspondiente al expediente actual.

Espero que esta solución te ayude a pasar el número de expediente al formulario "4-Control de Demoras" al hacer clic en el botón. ¡Buena suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar