viernes, 1 de junio de 2018

Access Pasos Botones de Formularios (Código)

1.- Crear un formulario en Opción Automática, Ligado a una Tabla.
2.- Cambiar a Vista Diseño, desactivar la opción propiedades del formulario  -opción formato, SELECTORES de REGISTRO y BOTONES DE NAVEGACIÓN, Activar (no) e Insertar Los Botones Correspondientes
3.-Crear los Botones Paso a paso
a) Insertar Botón, Cancelar el asistente, propiedades del botón, opción TODAS, poner Nombre cmd_nuevo, Poner Título Nuevo, Opción Eventos, Selleccionar AL HACER CLIC,  procedimiento, ingresar o clikear en los puntos ... y agregar el código correspondiente a cada botón.
b) Se crea una macro en la opción Menú Insertar módulo. más adelante indicare el códigpo para la macro

 CÓDIGO PARA BOTONES
Option Compare Database

Private Sub cmd_Anterior_Click()
Me.Recordset.MovePrevious
    If Me.Recordset.BOF Then
        Me.Recordset.MoveNext
        MsgBox "Ya Estas 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 = False
    Me.Cod.SetFocus
End Sub

Private Sub cmd_Siguiente_Click()
Me.Recordset.MoveNext
    If Me.Recordset.EOF Then
        Me.Recordset.MovePrevious
        MsgBox "Ya Estas en el Último Registro"
    End If
End Sub

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

CÓDIGO PARA MACRO
Option Compare Database

Sub DeshabilitarBotones()
With Form_Agregar_Productos
    .cmd_inicio.Enabled = False
    .cmd_Siguiente.Enabled = False
    .cmd_Anterior.Enabled = False
    .cmd_Final.Enabled = False
    .cmd_Nuevo.Enabled = False
    .cmd_Guardar.Enabled = False
End With
End Sub
Sub HabilitarBotones()
With Form_Agregar_Productos
    .cmd_inicio.Enabled = True
    .cmd_Siguiente.Enabled = True
    .cmd_Anterior.Enabled = True
    .cmd_Final.Enabled = True
    .cmd_Nuevo.Enabled = True
    .cmd_Guardar.Enabled = True
End With
End Sub

3 comentarios:

  1. Hola, he tratado de seguir el código al pie de la letra. estoy creando un formulario con los mismos botones Nuevo, Guardar, etc.
    He creado un módulo con el código para habilitar y deshabilitar los botones, cuando creo quiero crear un registro nuevo. He copiado el código tal cual pero cuando quiero ejecutar desde el formulario y doy clic en el botón Nuevo, me despliega un error que dice:

    Run-time error "424":
    Object required

    y me manda al debug en esta línea

    .cmd_Inicio.Enabled = False

    No sé como seguir. Dejo aquí el código del botón y del módulo completo:

    Botón Nuevo

    Private Sub cmd_Nuevo_Click()
    DoCmd.GoToRecord , , acNewRec
    Call DeshabilitarBotones
    Me.cmd_Guardar.Enabled = True
    Me.CDSID.SetFocus
    End Sub

    Módulo 1

    Sub DeshabilitarBotones()
    With form_CTQs_Cx727
    .cmd_Inicio.Enabled = False
    .cmd_siguiente.Enabled = False
    .cmd_Anterior.Enabled = False
    .cmd_Final.Enabled = False
    .cmd_Nuevo.Enabled = False
    .cmd_Guardar.Enabled = False
    End With
    End Sub
    Sub habilitarbotones()
    With form_CTQs_Cx727
    .cmd_Inicio.Enabled = True
    .cmd_siguiente.Enabled = True
    .cmd_Anterior.Enabled = True
    .cmd_Final.Enabled = True
    .cmd_Nuevo.Enabled = True
    End With
    End Sub
    End Sub


    Ojalá pueda echar un vistazo y darme ideas para ver que posibles errores he cometido o que soluciones puedo aplicar. De antemano gracias por su atención.

    saludos,

    ResponderBorrar