Inputbox excel
Résolu
zbuck
Messages postés
20
Date d'inscription
Statut
Membre
Dernière intervention
-
zbuck Messages postés 20 Date d'inscription Statut Membre Dernière intervention -
zbuck Messages postés 20 Date d'inscription Statut Membre Dernière intervention -
Bonjour, voici quelques lignes de code que je veux améliorer.
saisie_2:
valeur = InputBox("entrer le numero de la ligne.....")
If valeur < 6 or valeur > 10 Then
MsgBox ("valeur incorrecte")
GoTo saisie_2
je souhaiterai interdire en plus, la saisie d'une valeur 'vide', j'ai donc écris :
If valeur = "" or valeur < 6 or valeur > 10 Then
mais cela ne fonctionne pas , j'ai aussi essayé la fonction :do while.....loop; problème identique
avez_vous une solution Merci
saisie_2:
valeur = InputBox("entrer le numero de la ligne.....")
If valeur < 6 or valeur > 10 Then
MsgBox ("valeur incorrecte")
GoTo saisie_2
je souhaiterai interdire en plus, la saisie d'une valeur 'vide', j'ai donc écris :
If valeur = "" or valeur < 6 or valeur > 10 Then
mais cela ne fonctionne pas , j'ai aussi essayé la fonction :do while.....loop; problème identique
avez_vous une solution Merci
A voir également:
- Inputbox excel
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel moyenne - Guide
5 réponses
Normal, la variable valeur n'est pas définie !
En VBA, il existe une excellente habitude à prendre, qui consiste à commencer systématique le code par Option Explicit et donc à déclarer toutes les variables utilisées :
En VBA, il existe une excellente habitude à prendre, qui consiste à commencer systématique le code par Option Explicit et donc à déclarer toutes les variables utilisées :
Option Explicit Sub test() Dim Rep As String saisie_2: Rep = InputBox("entrer le numero de la ligne.....") If Rep = "" Or Val(Rep) < 6 Or Val(Rep) > 10 Then MsgBox ("valeur incorrecte") GoTo saisie_2 End If End Sub
Bonjour,
Comme l'on dit mes collègues, InputBox toute simple renvoie un String. D'ou l'incompatibilité de type...
On peux utiliser :
Application.InputBox("bla bla",Type:=1)
Les différents types d'InputBox : ici
Il faut aussi éviter les goto...
voici ma proposition :
Ne pas compléter l'InputBox renvoie un message d'erreur Excel, donc il est inutile de traiter ce cas...
Franck P
Comme l'on dit mes collègues, InputBox toute simple renvoie un String. D'ou l'incompatibilité de type...
On peux utiliser :
Application.InputBox("bla bla",Type:=1)
Les différents types d'InputBox : ici
Il faut aussi éviter les goto...
voici ma proposition :
Sub test() Dim valeur As Integer valeur = Application.InputBox("entrer le numero de la ligne.....", Type:=1) Do While valeur < 6 Or valeur > 10 MsgBox ("valeur incorrecte") valeur = Application.InputBox("entrer le numero de la ligne.....", Type:=1) Loop MsgBox valeur & " est une valeur correcte" End Sub
Ne pas compléter l'InputBox renvoie un message d'erreur Excel, donc il est inutile de traiter ce cas...
Franck P
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question