Con código, abriéndola con un Recordset, o usando DLookup en el origen del
control de texto del otro formulario.
--
Un saludo,
Patxi Sanz
patxisanz[ARROBA]yahoo[PUNTO]es
http://es.geocities.com/patxisanz/index.html
Tudela (NA)
pero en ambas no da ningún resultado ¿ me podrias ayudar con el Código?
no me ha quedado claro como hacer una consulta desde código osea fuera de
las consultas normales. Gracias
"Patxi Sanz" escribió:
= DLookup("[Importe]";"[CstDescrip]")
Y esto en la propiedad Origen de la fila de un cuadro combinado:
SELECT
Contenido.Concepto, Contenido.Guia FROM contenido WHERE
(((Contenido.Numero)=[Forms]![contenido]![numero]))
En la propiedad Origen del control SÓLO puede haber un dato de un campo de
un registro, no todos los registros.
en ese mismo form necesito que en un cuadro de texto me muestre dos datos
de "guia" y de "concepto" de los registros que ya esten en la tabla con ese
mismo numero que he acabado de teclear en el campo numero.
lo necesito en un cuadro de texto por que despues lo imprimire en en recibo
junto con otros datos de ese form espero haberme dado a entender. Gracias por
tu atención Patxi
La solución sencilla es usar un formulario continuo como subformulario de tu
formulario principal, que muestre los campos que quieres.
La solución complicada es usar una consulta, recoger los datos que devuelve
y unirlos para mostrarlos en el cuadro de texto.
Dim miBD As DAO.Database
Dim rsContenido As DAO.Recordset
Dim lGuia As Long
Dim sConcepto As String
Set miBD = CurrentDb()
Set rsContenido = miBD.OpenRecordset("Contenido", dbOpenSnapshot)
With rsContenido
If Not (.EOF And .BOF) Then
.FindFirst BuildCriteria("Numero", 4, "= " &
[Forms]![contenido]![Numero])
If Not .NoMatch Then
lGuia = Nz(!Guia)
sConcepto = Nz(!Concepto)
End If
End If
.Close
End With
Me.Descripción.Value = lGuia & sConcepto
Debug.Print lGuia
Debug.Print sConcepto
Set rsContenido = Nothing
Set miBD = Nothing
"Patxi Sanz" escribió:
>
>.... La solución complicada es usar una consulta, recoger los datos que devuelve
Dim miBD As DAO.Database
Dim rsContenido As DAO.Recordset
Dim sGuia As String
Dim sConcepto As String
Set miBD = CurrentDb()
Set rsContenido = miBD.OpenRecordset("SELECT Guia, Concepto FROM Contenido
WHERE Numero = " & [Forms]![contenido]![Numero], dbOpenSnapshot)
With rsContenido
If Not (.EOF And .BOF) Then
Do While Not .EOF Then
sGuia = sGuia & " - " & Nz(!Guia)
sConcepto = sConcepto & " - " & Nz(!Concepto)
End If
End If
.Close
End With
Me.Descripción.Value = sGuia & " / " & sConcepto
Debug.Print sGuia
Debug.Print sConcepto
Set rsContenido = Nothing
Set miBD = Nothing
Luego ya es adecuar cómo quieres unir los textos para mostrarlos en el
cuadro.
"Patxi Sanz" escribió:
A ver así:
Dim miBD As DAO.Database
Dim rsContenido As DAO.Recordset
Dim sSql As String
Dim sGuia As String
Dim sConcepto As String
Set miBD = CurrentDb()
sSql = "SELECT Guia, Concepto FROM Contenido " & _
"WHERE Numero = " & [Forms]![contenido]![Numero]
Debug.Print sSql
Set rsContenido = miBD.OpenRecordsets(Sql, dbOpenSnapshot)
With rsContenido
If Not (.EOF And .BOF) Then
Do While Not .EOF Then
sGuia = sGuia & " - " & Nz(!Guia)
sConcepto = sConcepto & " - " & Nz(!Concepto)
.MoveNext
Loop
End If
.Close
End With
Me.Descripción.Value = sGuia & " / " & sConcepto
Debug.Print sGuia
Debug.Print sConcepto
Set rsContenido = Nothing
Set miBD = Nothing
Si sigue fallando, ¿qué aparece en la ventana Inmediato?
"Patxi Sanz" escribió:
Menos mal que estabas ahí para corregirme :-)