Mostrar resultado consulta basado en un campo de un formulario continuo

Tengo un formulario access que contiene un subformulario continuo. Este subformulario continuo está basado en una consulta. En este subformulario continuo tengo que poner un control que obtendrá un numéro de la siguiente consulta SQL:

SELECT Sum([Unidades]*[Precio]) AS Total

FROM tblExptExpropiacion B, tblBienes, tblTipoBien 

WHERE B.IdExptExp = VALOR

              AND B.IdExptExp = tblBienes.IdExptExp

              AND tblBienes.IdTipoBien = tblTipoBien.IdTipoBien

Para ello seguí lo expuesto en: "Mostrar Resultado de Consulta SQL en una TextBox "

Sin embargo, el problema lo tengo con VALOR, ya que necesito que VALOR tome el valor contenido en un cuadro de texto del subformulario continuo.

¿Cómo podría solucionar esto?

1 respuesta

Respuesta
1

Prueba con:

WHERE B.IdExptExp = Formularios!NombreFormularioPrincipal!NombreSubformulario!Formulario!NombreCuadroTexto

A ver si te resulta.

Si no te recomendaría hacerlo por código.

Hola,

No me funciona.

Para meterlo por código, como lo haría? Yo he pensado en este código, pero no sé donde ubicarlo.

Dim strSQL As String
Dim miBD As DAO.Database
Dim rsContenido As DAO.Recordset

Set miBD = CurrentDb()

strSQL = "SELECT Sum([Unidades]*[Precio]) AS Total FROM tblExptExpropiacion AS B, tblBienes, tblTipoBien WHERE (((B.IdExptExp)=" & Me.txtIDExptExp & " And (B.IdExptExp)=[tblBienes].[IdExptExp]) AND ((tblBienes.IdTipoBien)=[tblTipoBien].[IdTipoBien]))"

Set rsContenido = miBD.OpenRecordset(strSQL, dbOpenSnapshot)
With rsContenido
     MsgBox Nz(rsContenido.Fields(0), 0)
    .Close
End With
Set rsContenido = Nothing
Set miBD = Nothing

Muchas gracias de antemano

NO te puedo aconsejar un evento porque desconozco tanto el funcionamiento general de la BD como en qué momento quieres mostrar el dato.

Una opción que suele funcionar siempre es el el evento "Al recibir el enfoque" o "Al entrar" el cuadro de texto.

También puedes ponerlo en "después de actualizar" o "al salir" o "al perder el enfoque" del último campo que intervenga en el cálculo...

Según dónde pongas el código (formulario o subformulario) la forma de hacer referencia al cuadro de texto txtIDExptExp cambiará. Tenlo en cuenta...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas