Événement Form.AfterDelConfirm (Access)

L’événement AfterDelConfirm se produit une fois que l’utilisateur confirme que les suppressions et les enregistrements sont réellement supprimés ou lorsque les suppressions sont annulées.

Syntaxe

expression. AfterDelConfirm (Status)

expressionVariable qui représente un objetForm.

Parameters

Nom Requis/Facultatif Type de données Description
État Obligatoire Integer Une constante intrinsèque qui indique si un enregistrement a été supprimé. acDeleteOK indique que la suppression a réussi. acDeleteCancel indique que la suppression a été annulée en Visual Basic. acDeleteUserCancel indique que la suppression a été annulée par l’utilisateur.

Remarques

Pour exécuter une macro ou une procédure événementielle lorsque ces événements se produisent, définissez la propriété AfterDelConfirm sur le nom de la macro ou [procédure événementielle].

Les enregistrements supprimés sont stockés dans un tampon temporaire.

Dans une base de données Microsoft Access, l'événement AfterDelConfirm se produit après que l'un ou les enregistrements sont réellement supprimés ou une suppression ou les suppressions sont annulées. Si l'événement BeforeDelConfirm n'est pas annulé, l'événement AfterDelConfirm se produit après l'affichage de la boîte de dialogue Confirmer la suppression. L'événement AfterDelConfirm se produit même si l'événement BeforeDelConfirm est annulé. La procédure événementielle AfterDelConfirm retourne des informations d'état à propos de la suppression. Par exemple, vous pouvez utiliser une macro ou une procédure événementielle associée à l'événement AfterDelConfirm pour recalculer les totaux affectés par la suppression des enregistrements.

Dans un projet Access (.adp), l’événement AfterDelConfirm se produit avant qu’un ou plusieurs enregistrements ne soient réellement supprimés. Pour éviter d’ouvrir des transactions inutiles sur Microsoft SQL Server, Access vous invite à confirmer la suppression avant d’ouvrir la transaction. Si vous confirmez la suppression, Access ouvre une transaction sur SQL Server, émet l’instruction DELETE pour supprimer l’enregistrement ou les enregistrements et déclenche l’événement Delete du formulaire. Si vous choisissez Non lorsque vous êtes invité à confirmer la suppression, Access n’ouvre pas de transaction sur SQL Server pour supprimer l’enregistrement et ne déclenche pas l’événement Delete du formulaire.

Si vous annulez l'événement Delete, l'événement AfterDelConfirm ne survient pas et la boîte de dialogue Confirmer la suppression n'est pas affichée.

Remarque

[!REMARQUE] L'événement AfterDelConfirm ne survient pas et la boîte de dialogue Confirmer la suppression ne s'affiche pas si vous désactivez la case à cocher Modifications des enregistrements sous Confirmer sur l'onglet Édition de la boîte de dialogue Options Access.

En exécutant une macro ou une procédure événementielle lorsque l'événement Delete survient, vous pouvez empêcher la suppression d'un enregistrement ou autoriser un enregistrement à supprimer uniquement sous certaines conditions. Vous pouvez également utiliser un événement de suppression pour afficher une boîte de dialogue vous demandant si l'utilisateur souhaite supprimer un enregistrement avant d'être supprimé.

Une fois l’enregistrement supprimé, le focus se déplace sur l’enregistrement suivant l’enregistrement supprimé, et l’événement Current de cet enregistrement se produit, suivi des événements Enter et GotFocus pour le premier contrôle de cet enregistrement.

L’événement BeforeDelConfirm se produit alors, juste avant qu’Access n’affiche la boîte de dialogue Confirmer la suppression vous demandant de confirmer la suppression. Une fois que vous répondez à la boîte de dialogue confirmé ou annulé la suppression, l'événement AfterDelConfirm se produit.

Vous pouvez supprimer un ou plusieurs enregistrements à la fois. L'événement Delete survient après la suppression de chaque enregistrement. Vous pouvez ainsi accéder aux données de chaque enregistrement avant sa suppression effective et de manière sélective confirmer ou d'annuler chaque suppression de la Supprimer macro ou une procédure événementielle. Lorsque vous supprimez plusieurs enregistrements, l'événement Current pour l'enregistrement situé après le dernier enregistrement supprimé et l' entrée et GotFocus pour le premier contrôle de cet enregistrement ne se produisent pas tant que tous les enregistrements sont supprimés. En d'autres termes, un événement Delete intervient pour chaque enregistrement sélectionné, mais pas d'autres événements se produisent jusqu'à ce que tous les enregistrements sélectionnés sont supprimés. L'événement AfterDelConfirm ne survient également pas jusqu'à ce que tous les enregistrements sélectionnés sont supprimés.

Exemple

L'exemple suivant montre comment vous pouvez utiliser la procédure événementielle BeforeDelConfirm pour afficher une boîte de dialogue personnalisée lorsqu'un enregistrement est supprimé et de supprimer la boîte de dialogue Confirmer la suppression. Il indique également comment vous pouvez utiliser AfterDelConfirm procédure événementielle pour afficher un message indiquant que la suppression s'est déroulée normalement ou si elle a été annulée par l'utilisateur ou dans Visual Basic.

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

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.