Estoy haciendo unos botones para un formulario en access 2007 y me da error en el botón nuevo:

En el código del botón nuevo me da error al compilar en la línea:

Me. Cod. SetFocus

Os envío todo el código

Private Sub Cmd_anterior_Click()
Me.Recordset.MovePrevious
If Me.Recordset.BOF Then
Me.Recordset.MoveNext
MsgBox "Estás en el primer registro"
End If

End Sub

Private Sub Cmd_Final_Click()
Me.Recordset.MoveLast
End Sub

Private Sub Cmd_Guardar_Click()
DoCmd.RunCommand acCmdSaveRecord
Call HabilitarBotones
Me.Cmd_Guardar.Enabled = False
End Sub

Private Sub Cmd_inicio_Click()
Me.Recordset.MoveFirst
End Sub

Private Sub Cmd_Nuevo_Click()
DoCmd.GoToRecord , , acNewRec
Call DeshabilitarBotones
Me.Cmd_Guardar.Enabled = True
Me.Cod.SetFocus
End Sub

Private Sub Cmd_Siguiente_Click()
Me.Recordset.MoveNext
If Me.Recordset.EOF Then
Me.Recordset.MovePrevious
MsgBox "Estás en el último registro"
End If
End Sub

Private Sub Form_Load()
Me.Cmd_Guardar.Enabled = False
End Sub

He seguido los pasos que indica el video 12 de access desde cero.

El botón nuevo llama a una macro para deshabilitar botones:

Sub DeshabilitarBotones()
With form_DEVOLUCIONES
.Cmd_inicio.Enabled = False
.Cmd_Siguiente.Enabled = False
.Cmd_anterior.Enabled = False
.Cmd_final.Enabled = False
.Cmd_nuevo.Enabled = False
End With
End Sub

Sub HabilitarBotones()
With form_DEVOLUCIONES
Cmd_inicio.Enabled = True
Cmd_Siguiente.Enabled = True
Cmd_anterior.Enabled = True
Cmd_final.Enabled = True
Cmd_nuevo.Enabled = True
End With
End Sub

2 respuestas

Respuesta
1

José Manuel: Es posible que ese control, no exista en el Formulario.

Es lo que se me ocurre viendo tu código. Mis saludos >> Jacinto

¡Gracias! 

Lo vuelvo a comprobar y te digo algo.

He cambiado la línea siguiendo tus consejos y he puesto

Me.N_ORDEn.SetFocus

Pero ahora el error me da en la macro Deshabiliatarbotones:

.Cmd_inicio.Enabled = False

Me dice error 424 en tiempo de ejecución

Se requiere un objeto

No se como continuar. Muchas gracias

José Manuel: de momento para ver los errores que te salen y si es que es porque ocurre como con el otro control, simplemente le pones una coma simple (se llama comentar en éste caso), en la línea:

Call DeshabilitarBotones, o sea >> 'Call DeshabilitarBotones

Mis saludos >> Jacinto

Parece que funciona, pero ¿dejará funcionar la macro?

Cuando siga probando te diré algo.

Ahora voy a cenar, y tu tendrás que descansar, que hoy es domingo

Muchas gracias

José Manuel: Por lo que deduzco de tu código, intentas manejar una botonera de registros personalizada.

Hay mucha documentación de ese tema en Internet y entre otros si quieres, puedes mirar éste ejemplo que tengo en Mediafire. Está como una utilidad más en la Aplicación.

http://www.mediafire.com/file/o594db0yib8h4o1/CosteAticulos.rar 

Mira el Módulo MdlBarrasBotones y como es llamada la Función en el Formulario "Articulos"

Verás que en el evento Form_Current (Al activar Registro) hay el siguiente código de llamada.

'
'Para los botones de desplazamiento
Set Frm = Forms!Articulos.Form
Call BotoneraRegistros
Set Frm = Nothing
'

Espero te sea de ayuda y si vas de acuerdo, valoras la respuesta. Mis saludos >> Jacinto

Respuesta

El access que utilice fue 2019.

me dio problema con .cmd_inicio.enabled = false

la solución fue sustituir el . por el '

ejemplo 'cmd_inicio.enabled = false

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas