Microsoft 365 réaficher une INPUTBOX

Electron24

XLDnaute Occasionnel
Bonsoir le Forum,

Après plusieurs recherches, j'ai trouvé une macro sur une INPUTBOX
Dans cette INPUTBOX, j'ai 2 boutons OK et ANNULER
Si je clique sur OK tout va bien j'ai mes instructions qui fonctionnent.
Si je clique sur ANNULER, j'ouvre une MSGBOX me demandant de confirmer l'annulation avec un bouton OUI et un Bouton NON
Si je clique sur OUI j’arrête la macro c'est correct.
Et c'est là que je plante, en appuyant sur NON je souhaiterai ré afficher mon INPUTBOX mais ça arrête aussi la macro
Comment y parvenir.
Merci d'avance pour votre aide.
 

Pièces jointes

  • Clas Astuces.xlsm
    19.7 KB · Affichages: 27
Solution
pour du texte, il faut une autre macro, car sa valeur 0 équivaut au 0 du FALSE
quand on clique sur le bouton Annuler, ou si on appuie sur la touche Echap ;
et comme faut bien sortir de la sub dans les 2 derniers cas, le PC ne peut pas
deviner qu'il faut rester dans la sub pour du texte. ;)


soan

Electron24

XLDnaute Occasionnel
Bonjour Soan, Bonjour Dranreb, Bonjour fhoest et Bonjour le Forum

Merci à vous pour votre aide.
Fhoest, je ne comprends pas bien ton code, pas assez détaillé rapport à mes connaissances.
Dranreb, dans les deux cas la macro se termine pas la fermeture de la boîte.
Soan, Si je valide la saisie du texte dans la INPUTBOX, je reviens toujours sur la MSGBOX "Saisissez quelque chose SVP" rien ne s'inscrit dans la cellule I2 cela est du peut etre à la formulation Application.Inputbox ?
 

soan

XLDnaute Barbatruc
Inactif
@Electron24

ah non, c'est pas normal ! sur mon PC ça marche correctement :

* clic sur INPUTBOX ➯ fenêtre Test ...

* saisir par exemple 50 et valider par OK ➯ message sur 2 lignes :
« 50 est votre saisie » et « à noter en I2 »

* clic sur bouton OK ➯ 50 est écrit en I2 ! :)

* juste après : terminé, ça sort de la sub

soan
 

Electron24

XLDnaute Occasionnel
Re

J'avais essayé Do Loop avant que tu ne m'envoie ton code.
C'est bien avec ton code.
VB:
Option Explicit

Sub TestInput() 'Test boîte INPUTBOX
  Dim Réponse, k%
1 Réponse = Application.InputBox("Entrez votre donnée :", "Test ...")
  If Val(Réponse) <> 0 Then
    MsgBox Réponse & " est votre saisie" & vbLf & vbLf & "à noter en I2", , "Valeur saisie."
    Range("I2") = Réponse: Exit Sub
  End If
  k = MsgBox("Voulez-vous annuler ?", vbYesNo + vbExclamation, "Confirmer")
  If k <> vbYes Then MsgBox "Saisissez quelque chose, SVP !": GoTo 1
End Sub
que j'ai ce souci.
 

soan

XLDnaute Barbatruc
Inactif
avec un MsgBox, tu peux tester, au retour de la boîte de dialogue, ces boutons :

Image.JPG


mais avec ton Application.InputBox, il n'y a pas de possibilité de tester les boutons, même si
dans la boîte de saisie de l'InputBox, il y a 2 boutons "OK" et "Annuler" ; le seul retour de
InputBox est ce qui est dans la case blanche de saisie.

s'il n'y a pas eu de saisie, la case blanche est vide et au retour : valeur FALSE (qui vaut 0) ;
si tu appuies sur la touche Échap, ou si tu cliques sur le bouton "Annuler", retour : 0 aussi.

si tu saisis du texte, comme j'ai utilisé Val(), valeur de retour : 0 aussi.

donc dans tous ces cas, message "Voulez-vous annuler ?" ; c'est seulement si tu as saisi
une valeur numérique (autre que 0, positive ou négative), que c'est considéré comme
une donnée à écrire en I2.

ton énoncé ne précisait pas ce que tu voulais saisir ; tu aurais dû l'indiquer ! :rolleyes:


soan
 

Electron24

XLDnaute Occasionnel
Re,
Non, c'est bien une valeur numérique que je souhaite entrer dans ma INPUTBOX.
Dans mon post #1 je cherchais à trouver comment retourner sur mon INPUTBOX après avoir appuyé sur "annuler" ce qui me demanderai par un MSGBOX une confirmation de l'annulation.
En clair c'est comme si en appuyant sur "annuler" je voulais revenir en arrière et réafficher l' INPUTBOX. (Titre de mon post)
J'ai voulu essayer du texte pour savoir si c'était normal et tu viens de me donner la réponse dans ton explication claire et détaillée. Merci soan
Question :
Dans le cas ou je souhaitais pouvoir saisir du texte j'aurais pu créer un petit formulaire avec une TXTBOX ? Oui ou Non ?
 

Discussions similaires

Réponses
8
Affichages
334
Réponses
8
Affichages
481
  • Résolu(e)
Microsoft 365 Problème code
Réponses
2
Affichages
361

Statistiques des forums

Discussions
312 201
Messages
2 086 170
Membres
103 151
dernier inscrit
nassim