Como buscar un dato en un formulario access vba

Expertos sucede que tengo un formulario con 3 campos a, b, c. Quiero buscar un registro y llenar los campos de acuerdo a un dato ingresado; sin embargo cuando lo hago el formulario no aparece como si se hubiese movido sino como si se estuviese editando, por lo cual me genera conflicto por la llave primaria.

Ej:

Formulario

Campo a=1 campo b=2 campo c=3

Formulario dato buscado=5

campo a=5 campo b=6 campo c=7

Sin embargo el formulario toma el formulario con el dato buscado como si lo estuviese modificando no como si se hubiese movido.

El codigo que uso en el momento es el siguiente:

Set db = CurrentDb
tabla = "Select * from tabla1"
Campo = "Campo"
criterio = ""

'Abro el recordet
Set rst = db.OpenRecordset(tabla, dbOpenDynaset)
'Busco y me muevo dentro del recorset
Dato = InputBox("Sr. Usuario diligencie el No. De NIT de la empresa que desea buscar")
If Dato = "" Then Exit Sub

criterio = Dato
rst.FindFirst "[campowhere]='" & criterio & "'"
Me.[A].Value = rst(0): Me.B.VALUE = rst(1):Me.C.VALUE = rst(1)

Me gustaría saber que esta mal y como puedo modificar lo.

1 respuesta

Respuesta
1

Leonardo: Sin repasar muco, lo que observo es que abres el Recordset como>>, dbOpenDynaset.

Si solo quieres leer debe ser dbOpenSnapshot

Dime si te arregló el problema : Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas