Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Procedure en cours: détection click

13 réponses
Avatar
Alf
Bonjour =C3=A0 tous,

Comment d=C3=A9tecter un click de souris quand un calcul dans une proc=C3=
=A9dure est en cours ?
Je voudrais, m'en servir pour arr=C3=AAter le calcul...

Merci pour votre aide =C3=A0 tous
Alf

3 réponses

1 2
Avatar
MichD
Un petit détail en plus, si tu masques le formulaire, tu peux ouvrir le formulaire dans une
fenêtre modale sans problème!
La procédure dans ton formulaire :
'----------------------------------------------------
Private Sub CommandButton1_Click()
UserForm1.Hide
test
UserForm1.Show
End Sub
'----------------------------------------------------
MichD
Avatar
MichD
Bonjour Xonic,
Pour pouvoir sortir d'une procédure ou d'une boucle dans une procédure VBA, il faut recourir à
ceci :
Dim X As XlEnableCancelKey
X peut prendre 3 valeurs différentes, voici les constantes textes ou numériques possibles.
xlInterrupt or 1, xlErrorHandler or 2, xlDisabled or 0
En affectant l'une de ces constantes à l'application Excel, cette dernière adopte un
comportement propre lorsque l'on appuie sur la touche "ESC". Pour ce faire, on utilise la ligne
de commande en utilisant la valeur de la constante désirée.
Application.EnableCancelKey = xlErrorHandler
xlDisabled or 0 : La combinaison d'aucune touche (y compris Ctrl + Pause) ne peut intervenir
dans l'exécution de la macro sauf évidemment la fermeture de l'application par Ctrl + Alt +
Del. Afin de ne pas se retrouver dans des boucles sans fin lors de l'élaboration d'une
procédure, il est important de définir le comportement que VBA doit avoir au moment où l'on
décide d'arrêter la procédure.
xlInterrupt or 1 permet d'arrêter l'exécution de la macro et a'apparition de la boîte de
dialogue "Débogage".
xlErrorHandler or 2 permet d'inclure une gestion d'erreur au moment de l'arrêt de la procédure.
Si on veut savoir quel est le statut utilisé par VBA, on peut simplement faire ceci :
Msgbox Application.EnableCancelKey et selon la valeur numérique affichée, on a la réponse.
Dans les autres messages sur ce fil, des exemples sont donnés.
MichD
Avatar
Xonic
Merci pour ces explications
MichD avait écrit le 09/05/2017 :
Bonjour Xonic,
Pour pouvoir sortir d'une procédure ou d'une boucle dans une procédure VBA,
il faut recourir à ceci :
Dim X As XlEnableCancelKey
X peut prendre 3 valeurs différentes, voici les constantes textes ou
numériques possibles.
xlInterrupt or 1, xlErrorHandler or 2, xlDisabled or 0
En affectant l'une de ces constantes à l'application Excel, cette dernière
adopte un comportement propre lorsque l'on appuie sur la touche "ESC". Pour
ce faire, on utilise la ligne de commande en utilisant la valeur de la
constante désirée.
Application.EnableCancelKey = xlErrorHandler
xlDisabled or 0 : La combinaison d'aucune touche (y compris Ctrl + Pause) ne
peut intervenir dans l'exécution de la macro sauf évidemment la fermeture de
l'application par Ctrl + Alt + Del. Afin de ne pas se retrouver dans des
boucles sans fin lors de l'élaboration d'une procédure, il est important de
définir le comportement que VBA doit avoir au moment où l'on décide d'arrêter
la procédure.
xlInterrupt or 1 permet d'arrêter l'exécution de la macro et a'apparition de
la boîte de dialogue "Débogage".
xlErrorHandler or 2 permet d'inclure une gestion d'erreur au moment de
l'arrêt de la procédure.
Si on veut savoir quel est le statut utilisé par VBA, on peut simplement
faire ceci :
Msgbox Application.EnableCancelKey et selon la valeur numérique affichée, on
a la réponse.
Dans les autres messages sur ce fil, des exemples sont donnés.
MichD

--
Alain
1 2