OVH Cloud OVH Cloud

On Break GoTo

5 réponses
Avatar
M. PETIT
Bonjour

Peut-on avoir en VBA l'équivalent d'une fonction
de certains basics anciens :

On Break Go To xxxx

En cas d'arrêt d'une macro, cela permet d'exécuter
un code pour limiter les catastrophes ?

Le code VBA peut-il être considéré comme un
objet avec des événements ?


Merci
A+

5 réponses

Avatar
Daniel.j
Oui !
avec
On error Go To xxx
par exemple
Daniel

FAQ du Forum Microsoft Public Fr Excel
http://dj.joss.free.fr/faq.htm

"M. PETIT" a écrit dans le message de news:
bnrjku$kge$
| Bonjour
|
| Peut-on avoir en VBA l'équivalent d'une fonction
| de certains basics anciens :
|
| On Break Go To xxxx
|
| En cas d'arrêt d'une macro, cela permet d'exécuter
| un code pour limiter les catastrophes ?
|
| Le code VBA peut-il être considéré comme un
| objet avec des événements ?
|
|
| Merci
| A+
|
|
|
Avatar
M. PETIT
Bonsoir

Désolé ce n'est pas la même chose
"Break" réagissait à une interruption
clavier dans l'exécution d'un programme
et pas sur une erreur.
Un "STOP" dans un logiciel produisait
le même effet aussi

Désolé et merci !




Daniel.j a écrit dans le message :
#
Oui !
avec
On error Go To xxx
par exemple
Daniel

FAQ du Forum Microsoft Public Fr Excel
http://dj.joss.free.fr/faq.htm

"M. PETIT" a écrit dans le message de news:
bnrjku$kge$
| Bonjour
|
| Peut-on avoir en VBA l'équivalent d'une fonction
| de certains basics anciens :
|
| On Break Go To xxxx
|
| En cas d'arrêt d'une macro, cela permet d'exécuter
| un code pour limiter les catastrophes ?
|
| Le code VBA peut-il être considéré comme un
| objet avec des événements ?
|
|
| Merci
| A+
|
|
|




Avatar
D.LAIR
Bonjour à toutes et à tous. Voici un exemple qui
fonctionne. DL

Sub TestECHAP()
Dim wx As String
' si on actionne la touche ECHAP, on obtient le bon
' message, sinon en activant la ligne wx
' et en laissant tourner jusqu'au bout, on a un autre
' message (correspondant à une erreur de type
' puisque wx est une chaine)
Application.EnableCancelKey = xlErrorHandler
On Error GoTo ERR1
For ixx = 1 To 10000
For jxx = 1 To 10000
zz = zz + 1
Next jxx
Next ixx
'wx = wx * 2
MsgBox "Fini normalement."
GoTo Sortie
ERR1:
If Err = 18 Then
MsgBox Error & " (Echap ou CTRL+ATTN ou
COMMANDE+POINT)"
Else
MsgBox "Erreur n° " & Err & " (" & Error & ")"
End If
Sortie:
End Sub

-----Message d'origine-----
Bonsoir

Désolé ce n'est pas la même chose
"Break" réagissait à une interruption
clavier dans l'exécution d'un programme
et pas sur une erreur.
Un "STOP" dans un logiciel produisait
le même effet aussi

Désolé et merci !




Daniel.j a écrit dans le
message :

#
Oui !
avec
On error Go To xxx
par exemple
Daniel

FAQ du Forum Microsoft Public Fr Excel
http://dj.joss.free.fr/faq.htm

"M. PETIT" a écrit dans le
message de news:


bnrjku$kge$
| Bonjour
|
| Peut-on avoir en VBA l'équivalent d'une fonction
| de certains basics anciens :
|
| On Break Go To xxxx
|
| En cas d'arrêt d'une macro, cela permet d'exécuter
| un code pour limiter les catastrophes ?
|
| Le code VBA peut-il être considéré comme un
| objet avec des événements ?
|
|
| Merci
| A+
|
|
|





.




Avatar
D.LAIR
Bonjour à toutes et à tous. Voici un exemple qui
fonctionne. DL

Sub TestECHAP()
Dim wx As String
' si on actionne la touche ECHAP, on obtient le bon
' message, sinon en activant la ligne wx
' et en laissant tourner jusqu'au bout, on a un autre
' message (correspondant à une erreur de type
' puisque wx est une chaine)
Application.EnableCancelKey = xlErrorHandler
On Error GoTo ERR1
For ixx = 1 To 10000
For jxx = 1 To 10000
zz = zz + 1
Next jxx
Next ixx
'wx = wx * 2
MsgBox "Fini normalement."
GoTo Sortie
ERR1:
If Err = 18 Then
MsgBox Error & " (Echap ou CTRL+ATTN ou
COMMANDE+POINT)"
Else
MsgBox "Erreur n° " & Err & " (" & Error & ")"
End If
Sortie:
End Sub

-----Message d'origine-----
Bonsoir

Désolé ce n'est pas la même chose
"Break" réagissait à une interruption
clavier dans l'exécution d'un programme
et pas sur une erreur.
Un "STOP" dans un logiciel produisait
le même effet aussi

Désolé et merci !




Daniel.j a écrit dans le
message :

#
Oui !
avec
On error Go To xxx
par exemple
Daniel

FAQ du Forum Microsoft Public Fr Excel
http://dj.joss.free.fr/faq.htm

"M. PETIT" a écrit dans le
message de news:


bnrjku$kge$
| Bonjour
|
| Peut-on avoir en VBA l'équivalent d'une fonction
| de certains basics anciens :
|
| On Break Go To xxxx
|
| En cas d'arrêt d'une macro, cela permet d'exécuter
| un code pour limiter les catastrophes ?
|
| Le code VBA peut-il être considéré comme un
| objet avec des événements ?
|
|
| Merci
| A+
|
|
|





.




Avatar
gee-dee-
;-)))

un peu cavalier comme réponse à un de nos MVP !!!!
si tu rejetes systématiquement les suggestions qui te sont proposées,
essaie de te débrouiller tout seul !!!!!
chaque langage à ses particularités c'est à cela qu'il est différent......
mais une interruption clavier VBA sait gérer cela , regarde l'aide !!!!!

EnableCancelKey, propriété
Cette propriété contrôle la façon dont Microsoft Excel gère les
interruptions CTRL+PAUSE (ou ÉCHAP ou COMMANDE+POINT) effectuées par des
utilisateurs pendant une procédure en cours. Type de données
XlEnableCancelKey en lecture-écriture.
XlEnableCancelKey peut être l'une de ces constantes XlEnableCancelKey.
xlDisabled. L'interception des annulations est complètement
désactivée.
xlErrorHandler. L'interruption est transmise à la procédure en cours
en tant qu'erreur, interceptable par un gestionnaire d'erreurs configuré
avec une instruction On Error GoTo. Le code d'erreur interceptable est 18.
xlInterrupt. La procédure en cours est interrompue et l'utilisateur
peut déboguer et achever la procédure.

etc.....

;-)))