Comment utiliser le bouton annulé d'un Inputbox
Résolu/Fermé
bassmart
Messages postés
281
Date d'inscription
jeudi 19 février 2015
Statut
Membre
Dernière intervention
19 décembre 2023
-
9 mars 2015 à 20:48
bassmart Messages postés 281 Date d'inscription jeudi 19 février 2015 Statut Membre Dernière intervention 19 décembre 2023 - 11 mars 2015 à 12:44
bassmart Messages postés 281 Date d'inscription jeudi 19 février 2015 Statut Membre Dernière intervention 19 décembre 2023 - 11 mars 2015 à 12:44
1 réponse
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 751
10 mars 2015 à 07:38
10 mars 2015 à 07:38
Bonjour,
Regarde cette fiche pratique CCM, en particulier ce chapitre à propos du bouton annuler.
Regarde cette fiche pratique CCM, en particulier ce chapitre à propos du bouton annuler.
10 mars 2015 à 15:33
Mais ça ne marche pas plus! Je n'y comprend rien!
J'ai essayé les 2 codes et dans les 2 cas lorsque je sélectionne le bouton annulé dans l'InputBox, il saute à ligne après le loop. C'est probablement le gars derrière le clavier le problème!
Voici ce que j'ai fait:
Pouvez-vous m'aider, merci!
Modifié par pijaku le 10/03/2015 à 15:57
Pas forcément. Quand on est dedans on ne voit pas tout...
Notamment le traitement d'erreur.
Le Goto doit renvoyer à une étiquette qui "clos" le code. Comme ceci :
10 mars 2015 à 16:43
Ça ne marche pas comme je veux! Lorsque j'appui sur le bouton annulé dans l'InputBox il continue avec NewVal qui est égale à zéro ou vide et il me renvoie la valeur faux dans la cellule sélectionnée.
Alors que je veux que lorsque j'appui sur cette touche qu'il sorte de la macro.
Merci!
11 mars 2015 à 07:59
Tu n'as pas utilisé mot pour moi le code donné par mon exemple.
Mea Culpa, je n'avais pas vu que tu utilisais une Application.InputBox de type 2 (chaîne de caractères). Ce type d'InputBox particulier renvoie "Faux" lorsqu'est cliqué le bouton Annuler.
Le test à faire alors pour sortir de la Sub est donc le suivant :
Ce qui te donne, à partir de ton code initial :
Notes :
Si tu veux "donner" plusieurs essais à l'utilisateur, tu peux insérer la boucle Do While avec le compteur (Cpt). Dans le cas contraire, c'est ici inutile.
en fin de code est inutile puisque tu ne le places pas à False en début de code...
11 mars 2015 à 12:44
C'est exactement ça! Ça fonctionne super!
Pour le , je l'ai placé dans mon code parce que dans ma feuille, j'ai une autre macro qui s'effectue lors d'un changement dans la feuille. Elle se lance, donc à l'intérieure de cette macro lorsque je change la valeur d'une cellule et à la fin de l'exécution des 2 macros, aucune macro ne fonctionnent et en placent cette commande, tout est ok.
Peut-être pas la meilleur méthode, mais ça fonctionne!
Voici les macro en arrière de cette feuille:
Encore merci!