Bonjour Bjh, Temjeh, le forum
Utilisation de la touche escape, mais avec une gestion d'erreur ce qui permet de controler le processus.
Cordialement, A+
Sub test()
Dim Demande_Erreur As Integer
Dim Compteur As Long, Compteur2 As Long
'redirige la touche echap sur une erreur utilisateur
'Application.EnableCancelKey = xlErrorHandler
'sur erreur envoie la routine
On Error GoTo Gere_Erreurs
'boucle d'attente
For Compteur = 1 To 100000000
Compteur2 = Compteur
Next Compteur
MsgBox "Boucle exécutée, compteur2 vaut " & Compteur2
Exit Sub
Gere_Erreurs:
If Err = 18 Then Demande_Erreur = MsgBox("Touche escape interceptée !", vbRetryCancel, Title:="Sortie volontaire") Else Demande_Erreur = MsgBox("Erreur numéro " & Err & " interceptée !" & Chr$(10) & "Type d'erreur : " & Error(Err), vbRetryCancel, Title:="Erreur détectée !")
If Demande_Erreur = 4 Then
Resume
Else
If Err = 18 Then
MsgBox "Vous avez arrété compteur2 à " & Compteur2
Else
'traitement des erreurs autres que la touche escape
End If
End If
End Sub