Access - modificar un poco esto

   
Vista:

modificar un poco esto

Publicado por Adolfo (98 intervenciones) el 27/03/2008 11:59:13
Buenos dias a todos, me gustaria hacer un "buscador" para ver clientes de una tabla y que se pueda buscar por Id, nombre y apellidos (ya que en nombre puede aber mas de 1 y el Id no creo que se lo sepan de memoria) por ahora, me paso mi menda uno que buscaba por ID he estado intentando modificarlo pero me da errores todo el rato, no tengo ni idea de que es el DAO.Recordset ni para que funciona. Dejo aqui la parte que creo yo que es la importante para modificarlo:
Sub Limpia() 'inicializa las variables
Me.txt_Nombre.Value = ""
Me.txt_Nombre.Visible = False
Me.txt_Apellidos.Value = ""
Me.txt_Apellidos.Visible = False
Me.txt_Tel1.Value = ""
Me.txt_Tel1.Visible = False
Me.txt_tel2.Value = ""
Me.txt_tel2.Visible = False
Me.Comando0.SetFocus
Me.Comando11.Visible = False
End Sub

Private Sub txt_Cte_LostFocus()
If Me.txt_Cte.Value <> "" Then 'si se tecleo cliente
'busco el cliente tecleado y si existe
'muestro los datos'
'si no existe muestro mensaje
Var = "SELECT Clientes.id_cliente, Clientes.nombre, Clientes.apellidos, Clientes.telefono, Clientes.telefono2 " _
& "FROM Clientes " _
& "WHERE Clientes.id_cliente=" & Val(Me.txt_Cte.Value) <-- supongo que sera aqui pero
no consigo que funcione.
Set db = CurrentDb()
Set rs = db.OpenRecordset(Var)
If rs.RecordCount > 0 Then
Me.txt_Nombre.Visible = True
Me.txt_Nombre.Value = rs!nombre
Me.txt_Nombre.Enabled = False
Me.txt_Apellidos.Visible = True
Me.txt_Apellidos.Value = rs!apellidos
Me.txt_Apellidos.Enabled = False
Me.txt_Tel1.Visible = True
Me.txt_Tel1.Value = rs!telefono
Me.txt_Tel1.SetFocus
Me.txt_tel2.Visible = True
Me.txt_tel2.Value = rs!telefono2
Me.Comando11.Visible = True
Else
MsgBox "No existe el cliente tecleado", vbInformation, "Aviso "
Me.txt_Cte.Value = ""
Me.txt_Cte.SetFocus
Exit Sub
End If
rs.Close
Set db = Nothing
End If
End Sub

gracias.

-Adolfo-
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

RE:modificar un poco esto

Publicado por mi menda (1111 intervenciones) el 28/03/2008 00:51:03
Hola Adolfo:
Ese código no me suena de nada.
¿El cliente lo quieres encontrar dentro de un conjunto de registros en un formulario?, o ¿Quieres seleccionar un cliente para un nuevo registro?.

Un Saludo
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

RE:modificar un poco esto

Publicado por Adolfo (98 intervenciones) el 28/03/2008 10:36:27
hola, lo que quiero es que al poner el nombre(o apellidos) de un cliente, me salgan sus datos, es decir ID nombre apellidos y telefonos. Todos los clientes estan en una tabla, es solo buscar en una tabla por nombre pero tiene que aparecer esos datos en casillas en el formulario.

gracias.
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

RE:modificar un poco esto

Publicado por mi menda (1111 intervenciones) el 28/03/2008 19:05:51
Hola Adolfo:
Te creas un formulario continuo cuyo origen sea una consulta con los campos que necesites, la consulta la puedes crear pulsando los tres puntitos del origen del registro del form.
En el encabezado o pie del formulario pones un textbox (txtBuscar). En la fila criterios de la consulta, en el campo nombre pones:

Como Forms!NombreForm!txtBuscar & "*"
También puedes poner esto(prueba las dos maneras y escoges la que más te guste)
Como "*" & Forms!NombreForm!txtBuscar & "*"

En un botón de comando pones

Me.Requery

Y te buscará los clientes que empiecen o contengan las letras que especifiques en el txtBuscar

Un Saludo
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