Error 2026 en tiempo de ejecución

Tengo un formulario con la tabla "orientadores" en el origen del registro y un código que se ejecuta al abrirse. En parte de ese código tengo lo siguiente:

For f = 1 To Form.Recordset.RecordCount
Select Case f
    Case 1
    or1 = [Nombre]
    Case 2
    or2 = [Nombre]
.
.
.
.
End Select
If Not Me.CurrentRecord = DCount("nombre", "orientadores") Then
   DoCmd.GoToRecord , , acNext
End If
Next

Cuando se ejecuta, me sale el error 2046,  y me dice que no se puede ir al registro específicado. Por más que lo miro, no veo donde está el error.

1 respuesta

Respuesta
1

No puede ir al siguiente porque ya está en el último registro. Personalmente no recorro un recordset clonado con FOR-NEXT como lo acostumbran otros en este foro, ya que esto no permite interactuar directamente sobre el recordset.

Adicione esta línea al inicio del procedimiento.

On Error Resume Next

Y cambie la últimas líneas por:

If Me.CurrentRecord <> DCount("nombre", "orientadores") Then
   DoCmd.GoToRecord , , acNext
End If

Y tenga cuidado de entrar en un bucle infinito....

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas