Problema con FindFirst
Publicado por Christian (2 intervenciones) el 21/06/2023 18:13:42
Tengo un pequeño proyecto en Access 2019 y deseo, dado el ingreso de un código (string) el FindFirst me encuentre el primero que coincida con el criterio dado para así rápidamente completar la descripción del producto.
Dim tablaProd As Recordset
Set tablaProd = CurrentDb.OpenRecordset("Productos")
With tablaProd
.FindFirst ("[Codigo] = " & CodiArticulo)
If .NoMatch Then
MsgBox ("Artículo no está cargado en STOCK")
PrecioArticulo.Enabled = False
CodiArticulo.SetFocus
Else
If IsNull(.Fields("PrecioBase")) Then
MsgBox ("No se ha registrado el precio base" & Chr(13) & "para este artículo.")
Exit Sub
End If
PrecioArticulo = .Fields("PrecioBase")
DescriArticulo = .Fields("Descripción")
PrecioArticulo.Enabled = True
PrecioArticulo.SetFocus
End If
End With
Sin embargo cuando ejecuto el sub me arroja error '3251' (Operación no válida para este tipo de objeto) y al depurar me marca la sentencia de FindFirst.
Este mismo código lo he utilizado anteriormente en proyectos Access 2003 sin problemas. ¿Qué puede estar mal en Access 2019?
Muchas gracias!
Dim tablaProd As Recordset
Set tablaProd = CurrentDb.OpenRecordset("Productos")
With tablaProd
.FindFirst ("[Codigo] = " & CodiArticulo)
If .NoMatch Then
MsgBox ("Artículo no está cargado en STOCK")
PrecioArticulo.Enabled = False
CodiArticulo.SetFocus
Else
If IsNull(.Fields("PrecioBase")) Then
MsgBox ("No se ha registrado el precio base" & Chr(13) & "para este artículo.")
Exit Sub
End If
PrecioArticulo = .Fields("PrecioBase")
DescriArticulo = .Fields("Descripción")
PrecioArticulo.Enabled = True
PrecioArticulo.SetFocus
End If
End With
Sin embargo cuando ejecuto el sub me arroja error '3251' (Operación no válida para este tipo de objeto) y al depurar me marca la sentencia de FindFirst.
Este mismo código lo he utilizado anteriormente en proyectos Access 2003 sin problemas. ¿Qué puede estar mal en Access 2019?
Muchas gracias!
Valora esta pregunta


0