Evento Form. AfterDelConfirm (Access)Form.AfterDelConfirm event (Access)

El evento AfterDelConfirm se produce después de que el usuario confirme que las eliminaciones y los registros se eliminen realmente o cuando se cancelen las eliminaciones.The AfterDelConfirm event occurs after the user confirms that the deletions and the records are actually deleted or when the deletions are canceled.

SintaxisSyntax

expresión. AfterDelConfirm (Estado)expression.AfterDelConfirm (Status)

expresión Variable que representa un objeto Form.expression A variable that represents a Form object.

ParámetrosParameters

NombreName Obligatorio/opcionalRequired/Optional Tipo de datosData type DescripciónDescription
StatusStatus ObligatorioRequired IntegerInteger Una constante intrínseca que indica si se ha eliminado un registro.An intrinsic constant that indicates whether a record has been deleted. acDeleteOK indica que la eliminación se ha realizado correctamente.acDeleteOK indicates that the deletion was successful. acDeleteCancel indica que la eliminación se canceló en Visual Basic.acDeleteCancel indicates that the deletion was canceled in Visual Basic. acDeleteUserCancel indica que el usuario canceló la eliminación.acDeleteUserCancel indicates that the deletion was canceled by the user.

ComentariosRemarks

Para ejecutar una macro o procedimiento de evento cuando se produzcan estos eventos, establezca la propiedad AfterDelConfirm en el nombre de la macro o en [procedimiento de evento].To run a macro or event procedure when these events occur, set the AfterDelConfirm property to the name of the macro or to [Event Procedure].

Una vez eliminado un registro, éste se almacena en un búfer temporal.After a record is deleted, it's stored in a temporary buffer.

En una base de datos de Microsoft Access, el evento AfterDelConfirm se produce después de un registro o registros se eliminen realmente o después de que se cancelen las eliminaciones.In a Microsoft Access database, the AfterDelConfirm event occurs after a record or records are actually deleted or after a deletion or deletions are canceled. Si no se cancela el evento BeforeDelConfirm, el evento AfterDelConfirm se produce después de que se muestra el cuadro de diálogo Confirmar eliminación.If the BeforeDelConfirm event isn't canceled, the AfterDelConfirm event occurs after the Delete Confirm dialog box is displayed. El evento AfterDelConfirm se produce incluso cuando se cancela el evento BeforeDelConfirm.The AfterDelConfirm event occurs even if the BeforeDelConfirm event is canceled. El procedimiento de evento AfterDelConfirm devuelve información de estado sobre la eliminación.The AfterDelConfirm event procedure returns status information about the deletion. Por ejemplo, puede usar una macro o procedimiento de evento asociado con el evento AfterDelConfirm para volver a calcular los totales afectados por la eliminación de registros.For example, you can use a macro or event procedure associated with the AfterDelConfirm event to recalculate totals affected by the deletion of records.

En un proyecto de Access (. ADP), el evento AfterDelConfirm se produce antes de que un registro o registros se eliminen realmente.In an Access project (.adp), the AfterDelConfirm event occurs before a record or records are actually deleted. Para evitar que se abran transacciones innecesarias en Microsoft SQL Server, Access le pedirá que confirme la eliminación antes de abrir la transacción.To avoid opening unnecessary transactions on Microsoft SQL Server, Access prompts you to confirm the deletion before opening the transaction. Si confirma la eliminación, Access abre una transacción en SQL Server, emite la instrucción DELETE para eliminar el registro o registros y desencadena el evento Delete del formulario.If you confirm the deletion, Access opens a transaction on SQL Server, issues the DELETE statement to delete the record or records, and fires the form's Delete event. Si elige no cuando se le pide que confirme la eliminación, Access no abre ninguna transacción en SQL Server para eliminar el registro y no desencadena el evento Delete del formulario.If you choose No when prompted to confirm the deletion, Access does not open a transaction on SQL Server to delete the record and does not fire the form's Delete event.

Si cancela el evento Delete, el evento AfterDelConfirm no se produce, ni tampoco aparecerá el cuadro de diálogo Confirmar eliminación.If you cancel the Delete event, the AfterDelConfirm event does not occur and the Delete Confirm dialog box isn't displayed.

Nota

[!NOTA] El evento AfterDelConfirm no se produce, ni tampoco aparecerá el cuadro de diálogo Confirmar eliminación si desactiva la casilla de verificación Cambios en los registros en Confirmar en la ficha Edición del cuadro de diálogo Opciones de Access.The AfterDelConfirm event does not occur and the Delete Confirm dialog box isn't displayed if you clear the Record Changescheck box under Confirm on the Editing tab of the Access Options dialog box.

Mediante la ejecución de una macro o un procedimiento de evento cuando se produce el evento Delete, puede impedir que se va a eliminar un registro o permitir que se va a eliminar solo en determinadas condiciones.By running a macro or an event procedure when the Delete event occurs, you can prevent a record from being deleted or allow a record to be deleted only under certain conditions. También puede usar un evento Delete para mostrar un cuadro de diálogo que pregunte al usuario si quiere eliminar un registro antes de hacerlo.You can also use a Delete event to display a dialog box asking whether the user wants to delete a record before it's deleted.

Una vez eliminado el registro, el enfoque se desplaza al Registro siguiente, seguido de los eventos Enter y **** GotFocus para el primer control de ese registro y, a continuación, los eventos Enter y GotFocus del primer control.After you delete the record, the focus moves to the next record following the deleted record, and the Current event for that record occurs, followed by the Enter and GotFocus events for the first control in that record.

A continuación, el evento BeforeDelConfirm se produce, justo antes de que Access muestre el cuadro de diálogo Confirmar eliminación que le pide que confirme la eliminación.The BeforeDelConfirm event then occurs, just before Access displays the Delete Confirm dialog box asking you to confirm the deletion. Después de responder al cuadro de diálogo confirmando la eliminación o cancelándola, se produce el evento AfterDelConfirm.After you respond to the dialog box by confirming or canceling the deletion, the AfterDelConfirm event occurs.

Es posible eliminar más de un registro a la vez.You can delete one or more records at a time. El evento Delete se produce después de la eliminación de cada registro.The Delete event occurs after each record is deleted. De esta forma tendrá acceso a los datos de cada registro antes de su eliminación efectiva, y podrá confirmar o cancelar cada eliminación en la macro o procedimiento de evento Delete.This enables you to access the data in each record before it's actually deleted, and selectively confirm or cancel each deletion in the Delete macro or event procedure. Cuando se elimina más de un registro, el evento Current del registro siguiente al último eliminado y los eventos Enter y GotFocus de su primer control no se producen hasta después de la eliminación de todos los registros.When you delete more than one record, the Current event for the record following the last deleted record and the Enter and GotFocus events for the first control in this record don't occur until all the records are deleted. En otras palabras, se produce un evento Delete por cada registro seleccionado, pero ocurre ningún otro evento hasta que se eliminan todos los registros seleccionados.In other words, a Delete event occurs for each selected record, but no other events occur until all the selected records are deleted. El evento AfterDelConfirm no ocurre hasta que se eliminan todos los registros seleccionados.The AfterDelConfirm event also does not occur until all the selected records are deleted.

EjemploExample

En el siguiente ejemplo se muestra cómo puede usar el procedimiento de evento BeforeDelConfirm para suprimir el cuadro de diálogo Confirmar eliminación y mostrar un cuadro de diálogo personalizado cuando se elimina un registro.The following example shows how you can use the BeforeDelConfirm event procedure to suppress the Delete Confirm dialog box and display a custom dialog box when a record is deleted. También se muestra cómo puede usar la AfterDelConfirm al procedimiento de evento para mostrar un mensaje que indica si se ha realizado la eliminación de la forma habitual o si ha sido cancelada en Visual Basic o por el usuario.It also shows how you can use the AfterDelConfirm event procedure to display a message indicating whether the deletion progressed in the usual way or whether it was canceled in Visual Basic or by the user.

Private Sub Form_BeforeDelConfirm(Cancel As Integer, _ 
 Response As Integer) 
 ' Suppress default Delete Confirm dialog box. 
 Response = acDataErrContinue 
 ' Display custom dialog box. 
 If MsgBox("Delete this record?", vbOKCancel) = vbCancel Then 
 Cancel = True 
 End If 
End Sub 
 
Private Sub Form_AfterDelConfirm(Status As Integer) 
 Select Case Status 
 Case acDeleteOK 
 MsgBox "Deletion occurred normally." 
 Case acDeleteCancel 
 MsgBox "Programmer canceled the deletion." 
 Case acDeleteUserCancel 
 MsgBox "User canceled the deletion." 
 End Select 
End Sub

Soporte técnico y comentariosSupport and feedback

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación?Have questions or feedback about Office VBA or this documentation? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.