Cambiar criterio de campo sql

Quería poner esta línea como campo de texto

Set rst = Forms!telconsulta.RecordsetClone
rst.FindFirst "tel = " & Me.Lista0

Donde tel es un campo de texto en la tabla telconsulta, pero al hacer doble click me habré bien el formulario pero me dice que el criterio de campo no coincide, he probado de poner comillas simples pero no me funciono o no supe colocarlas bien. El campo de tel tiene que ser de texto sino no puedo grabar números internacionales.

1 respuesta

Respuesta
1

Has probado con:

"tel = '" & Me.Lista0 & "'"

Saludos >> Jacinto

Hola si lo pongo así me sale en verde la última parte

saludos

No acabo de entender, que es en verde.

Dime por favor si teda error con número de identificación o algunos detalles más del código en su conjunto.

Saludos >> Jacinto

si, mira , pongo comida sencilla y luego doble comilla y al final pongo la comida sencilla entre dos doble comilla, en ese momento las comillas del final se me pone verde y otra vez me puso error de sintaxis.

la lista0 que se refiere el código es un cuadro de lista y esta en el evento de doble clic.

DoCmd.OpenForm "telconsulta"
Set rst = Forms!telconsulta.RecordsetClone
rst.FindFirst "tel =" & Me.Lista0
'Busca el primer registro que la referencia coincida con la que pone el cuadro de lista
Forms!telconsulta.Bookmark = rst.Bookmark
'Establece el registro actual en un objeto Recordset al registro identificado por un marcador válido
DoCmd.Close acForm, "BuscadorGeneral"

ese es el código en conjunto.

ahora lo que aparece en ese cuadro de lista viene de otro cuadro que con un Select me trae los datos que quiero mostrar.

Case Is = "Cliente" 'Si selecciono Cliente
Me.Busqueda = "1" 'Cuando marco esta opción le asigna el 1
Me.Lista1.RowSource = "tel;compania;titular"
Me.Caption = "Buscar telefono"
'Titulo al formulario por lo que estoy buscando
Me.Lista0.ColumnCount = 3
'Le indico el Nº de Columnas
Me.Lista0.ColumnWidths = "1,969 cm;1,92 cm;5,52 cm"
Me.Lista0.RowSource = "SELECT tel.tel, tel.compania, tel.titular  FROM tel ORDER BY tel.tel ASC;"

al hacer clic en el cuadro de lista me aparece un campo en el cual ingreso lo que busco con este código en el evento después de actualizar...

Select Case Lista1
Case Is = "Nº Referencia"
Me.Lista0.RowSource = "SELECT tel.tel, tel.compania, tel.titular  FROM tel Where [tel].[tel]like '*" & Busca.Text & "*' order by [tel]ASC;"

gracias.

Al principio me equivoque el que es campos de texto en el campo tel en la tabla tel, el formulario telconsulta es el formulario que esta asociado a la tabla.

Veamos: Según veo, la última finalidad de ese código es abrir el Formulario “telconsulta” desde el valor seleccionado en el Lista0, del Formulario “BuscadorGeneral”
Siendo así y habiendo varios modos de hacerlo, en mi opinión es que Abras ese Formulario, lógicamente desde el DobleClick que ya tienes, dentro del Formulario “BuscadorGeneral”, del siguiente modo:

Private Sub Lista0_DblClick(Cancel As Integer)
Dim CriterioApertura As String, NombreForm As String
On Error GoTo Err_Lista0_DblClick_Click

NombreForm = "telconsulta"

CriterioApertura = "[tel]= '" & Me![tel] & "'"

DoCmd.OpenForm NombreForm, , , CriterioApertura

DoCmd.Close acForm, Me.Name

Exit_Lista0_DblClick_Click:
Exit Sub
Err_Lista0_DblClick_Click:
MsgBox Err.Description
Resume Exit_Lista0_DblClick_Click
End Sub 'Lista0_DblClick(Cancel As Integer)

Ya me contarás. Saludos >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas