L'informatique à votre portée
L'informatique prêt-à-porter

Faites appel à moi pour vos formations
sur les dpts 81, 31, 82, 11 et 67 (Strasbourg)
Confiez moi vos développements Office

FacebookTwitterGoogle BookmarksLinkedin

InputBox

4 mars 2014
Imprimer E-mail

Cette fonction affiche une boîte de dialogue avec une zone de texte, elle attend que l'utilisateur tape du texte dans cette dernière et/ou clique sur un bouton. Elle renvoie alors le texte tapé sous forme d'une chaîne (le type String).
InputBox permet de préciser le texte d'invite, le titre de la boîte de dialogue, le texte à afficher dans la zone de texte (permet de proposer une réponse par défaut), la position sur l'écran de cette boîte et éventuellement l'aide à afficher (il faut au préalable concevoir un fichier d'aide).
L'exemple suivant, vous indique comment l'utiliser.
Sub Message()
   Dim Retour As String

   Retour = InputBox("Texte à afficher dans la cellule A1 ? ", "Titre de la fenêtre", "Texte par défaut", 100, 100)
   Range("A1") = Retour
End Sub
Si vous n'avez pas de texte par défaut à proposer vous utilisez la ligne ainsi :
   Retour = InputBox("Texte à afficher dans la cellule A1 ? ", "Titre de la fenêtre", , 100, 100)
Si vous ne précisez pas la position sur l'écran, la boîte de dialogue est centrée horizontalement et se positionne à 1/3 de l'écran, en partant du haut, la ligne s'écrit alors ainsi :
  
Retour = InputBox("Texte à afficher dans la cellule A1 ? ", "Titre de la fenêtre", "Texte par défaut")

Dans le cas où l'utilisateur clique sur le bouton Annuler, la fonction renvoie une chaîne vide, vous avez alors 2 possibilités pour gérer cette annulation :

  • Vous voulez empêcher l'utilisation de ce bouton, écrivez le code ainsi :
       Do 
          Retour = InputBox("Texte à afficher dans la cellule A1 ? ")
       Loop While Retour = ""
  • Vous ne voulez pas continuer le code :
       Retour = InputBox("Texte à afficher dans la cellule A1 ? ")
       If Retour = "" Then Exit Sub