Accès aux boutons d'une InputBox

Résolu
franklin626 Messages postés 4 Date d'inscription jeudi 25 octobre 2007 Statut Membre Dernière intervention 18 janvier 2008 - 18 janv. 2008 à 19:20
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 - 19 janv. 2008 à 09:34
Bonjour à tous, si j'écris le code de la sorte :


Dim code_inf As String = InputBox("Veuillez saisir le code de l'infirmière :", "Accès aux actes pratiqués")


Comment puis-je accéder aux boutons "OK" et "Annuler" de cette InputBox?
J'aimerais pouvoir ne rien faire si on appuie sur le second...


Merci d'avance^^

12 réponses

Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
18 janv. 2008 à 19:47
Tu dois te faire ta propre inputbox pour cela car tu ne peux rien faire avec l'inputbox fournie par défaut
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
18 janv. 2008 à 20:37
C'est quoi cette réponse Kristof, as-tu lu la question au moins ????

Extrait de l'aide MSDN sur l'InputBox :

"... Si l'utilisateur clique sur OK ou appuie sur ENTRÉE , la fonction
InputBox renvoie le texte contenu dans la zone de texte. Si l'utilisateur
clique sur le bouton Annuler, la fonction renvoie une chaîne de longueur
nulle ("")...."

Donc :
Dim code_inf As String = InputBox("Veuillez saisir le code de l'infirmière :", "Accès aux actes pratiqués")


If code_inf <>"" Then
    'Faire ce que tu as à faire
End If

---- Sevyc64  (alias Casy) ---- <hr size ="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
18 janv. 2008 à 20:37
 Bonjour à tous,

Bonsoir Kristof,
On peut néanmoins vérifier la saisie d'une inputbox standard.

Call VerifInputBox(InputBox("Veuillez saisir le code de l'infirmière :", "Accès aux actes pratiqués"))

Function VerifInputBox(Reponse)
   If LenB(Reponse) > 0 then
      msgbox Reponse,,"click sur OK et zone saisie non vide"
      '........
   Else
      msgbox "soit:" &vbCr&_
             "- click sur la croix" &vbCr&_
             "- click sur Annuler" &vbCr&_
             "- click sur OK mais zone saisie vide",,"Anomalie"
      '.....
   End If
End Function 

jean-marc
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
18 janv. 2008 à 20:39
Salut,

Moi je comprend pas ta demande...lol...Du moment que tu appuis sur Annuler, tu ne fera rien...Maintenant, si tu veux tester ce qu'il y a comme retour de saisie dans la box, fait le test :

Dim code_inf As String
 code_inf  = InputBox("Veuillez saisir le code de l'infirmière :", "Accès aux actes pratiqués")
 
 If LenB(code_inf ) = 0 Then MsgBox "Aucune saisie"

A+
Exploreur

 Linux a un noyau, Windows un pépin

  If My Answer Is Good Then Click Réponse Acceptée <>
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
franklin626 Messages postés 4 Date d'inscription jeudi 25 octobre 2007 Statut Membre Dernière intervention 18 janvier 2008
18 janv. 2008 à 20:59
J'aimerais pouvoir distinguer, dans le cas d'une saisie nulle, si on a cliqué sur "Envoyer" ou "Quitter" ^^
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
18 janv. 2008 à 21:01
Bonsoir à tous,

Lol...les 3 postes ont du être mis sur le topic en même temps, car je n'ai pas reçu de mail concernant le post de Casy et Jmo...Arfff le rafraichissement de IE !

A+
Exploreur

 Linux a un noyau, Windows un pépin

  If My Answer Is Good Then Click Réponse Acceptée
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
18 janv. 2008 à 21:02
Salut,

franklin626 >> Je pense que là tu as toutes les réponses....Suffit juste de faire le test avec les bouts de code proposés...

A+
Exploreur

 Linux a un noyau, Windows un pépin

  If My Answer Is Good Then Click Réponse Acceptée
0
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
18 janv. 2008 à 22:08
Casy < Exact ! Faut que j'aille me chouher de bonne heure ce soir, car je viens de passer 10 jours à faire des formations,et ca m'a atteind les neurones du developpement !!!
0
Utilisateur anonyme
18 janv. 2008 à 23:32
Salut à tous,

Je viens rajouter du piquant :
Si dans un programme on demande à l'utilisateur de saisir une info via une inputbox (ca on s'en serais douter, c'est le sujet) et qu'on veille que l'utilisateur ait la possibilité de laisser le champ vide. Mais aussi qu'il puisse annuler pour aller je ne sais ou.
Donc, si il laisse le champ vide, inputbox retournera "", et si il appui sur annuler, ca retournera aussi "".
Comment en faire la différence ?

Dans ce cas, la seule solution est : créer ca propre dialog !
non ?

__________
  Kenji
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
18 janv. 2008 à 23:38
Quel intérêt d'avoir un champ vide pour une InputBox, nous perdons l'intérêt de celle-ci de pouvoir à la base saisir une information...Ou alors j'ai pas compris ton raisonnement Charles Racaud(Salut ).

A+
Exploreur

 Linux a un noyau, Windows un pépin
0
Utilisateur anonyme
18 janv. 2008 à 23:42
Ben oui, quel interet ? Mais je me souviens que j'en avais eu besoins jadis.

__________
  Kenji
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
19 janv. 2008 à 09:34
L'interet est simple : Effacer une donnée précédenment saisie.

Dans ce cas, un  click sur Annuler, on annule la saisie et on laisse les choses en état, on click sur ok avec une chaine vide, on valide la saisie et on efface la donnée. Il faut donc pouvoir distingué les 2 chaines vides.

C'est un cas très particulier assez courant, et dans ce cas là, il n'y a pas beaucoup de solution. Soit faire sa propre InputBox, soit utiliser l'inputbox classique, mais en cas de retour vide, on affiche on message de confirmation avec une messagebox surlaquelle on peut distingué le bouton cliqué.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
Rejoignez-nous