Buscar una dato y asignarlo a un cuadro de texto access

Encontré el siguiente código en uno de los blog de la pagina lo puse en practica
y funciona perfecto pero me causa una curiosidad de como puedo asignar el dato
encontrado en una caja de texto ya que la idea del formulario es traer determinados
datos de otra tabla y asignarla en una caja de texto de un formulario.

Dim base As Database
Dim rst As Recordset
Set base = CurrentDb

If Textobuscar <> "" Then
Set rst = base.OpenRecordset("select area,nombreequipo,serie,identificacion from Datos where identificacion like '*" & Textobuscar & "*'")

MsgBox rst.Fields("nombreequipo")

rst.Close
Set rst = Nothing
base.Close
Set base = Nothing
End If

1 Respuesta

Respuesta
2

No me queda claro qué es lo que quieres hacer, por lo que te doy indicaciones "en general"...

.- Si quieres pasar los datos encontrados a varios cuadros de texto de tu formulario (llamados txtxArea, txtEquipo..), tienes que quitar la línea del MsgBox y poner:

Me.txtArea=rst("area")

Me.txtEquipo=rst("nombreequipo")

Y así con todos los que necesites

.- Si quieres poner todos los datos del registro en un mismo campo (llamémosle txtResultado), de nuevo quita la línea del MsgBox y pon:

Me.txtResultado=rst("Area") & " - " & rst("nombreequipo") & " - " & rst("serie")

En este caso, encadeno el valor de los campos con un espacio, un guión y un espacio (" - "), pero puedes encadenarlos como prefieras.

Un saludo.


     bit.ly/ForoNkSv 

¡Gracias! 
como siempre impecable en tus respuestas, pero tengo una inquietud por que cuando busca los

datos y los ubica en los campos por que guarda inmediatamente

Un cordial saludo,

Este es el código trabajando super bien con tu ayuda pero por que guarda inmediatamente

En la tabla cuando se insertan en cajas de texto

Dim base As Database
Dim rst As Recordset
Set base = CurrentDb

If Textobuscar <> "" Then
Set rst = base.OpenRecordset("select area,nombreequipo,serie,identificacion from Datos where identificacion like '*" & Textobuscar & "*'")
Me.equipo = rst.Fields("nombreequipo")
Me.ubicacion = rst.Fields("area")
Me.referiencia = rst.Fields("serie")
Me.Mant_id = rst.Fields("identificacion")
MsgBox "Registro encontrado y insertado en el documento satifactoriamente"
rst.Close
Set rst = Nothing
base.Close
Set base = Nothing
End If

Si te guarda inmediatamente es, además de porque tu formulario está basado en la tabla, porque en algún sitio tienes alguna instrucción que te hace el guardado de los datos. Si no no tendría por qué guardarte los valores en la tabla hasta que cambies de registro, cierres el formulario o hagas alguna acción de guardado.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas