[RESOLU] InputBox- limitation saisie 4 chiffres

cathodique

XLDnaute Barbatruc
Bonsoir:),
Je voudrais limiter la saisie ou rejeter tout nombre ne comportant pas 4 chiffres.
VB:
Sub essai_application_inputbox()
  Dim Nb As String
  Nb = Application.InputBox("Un nombre de 4 chiffres, SVP", Type:=1)
  If Nb = Empty Then
    Exit Sub
  Else
    MsgBox "poursuite du code..."
  End If
    'Les types de valeurs peuvent être les suivants :
  '0: Formule
  '1: Nombre
  '2: Texte
  '4: Valeur logique(True Or False)
  '8: Référence de cellule
  '16: Valeur d’erreur
  '64: Tableau de valeurs
 End Sub
En vous remerciant par avance.

Bonne soirée et bon week-end.:)
 

cathodique

XLDnaute Barbatruc
Bonsoir le fil, le forum

Une autre approche
(PS: Mieux vaut ne pas saisir des lettres sinon...)

Merci beaucoup Staple1600. Je pense m'en sortir comme ça.;)
comme ceci c'est OK, même si on saisit des lettres, elles ne seront pas prises en compte.
VB:
Sub b()
Dim a
a = Application.InputBox("Nombre?", Type:=1)
If Len(a) = 4 And 1000 Mod a = 1000 Then
MsgBox "Saisie OK"
End If
End Sub
 
Dernière édition:

job75

XLDnaute Barbatruc
Bonjour cathodique, zebanx, JM, Nicole, le forum,

Ceci est tout de même très classique :
Code:
Sub Essai()
Dim x$
While Not x Like "####"
    x = InputBox("Entrez 4 chiffres :", , x)
    If x = "" Then Exit Sub
Wend
'suite
End Sub
Bonne journée.
 

cathodique

XLDnaute Barbatruc
Code:
Sub saisieNombre()
  Do
    Nombre = Application.InputBox("Nombre ?", Type:=1, Title:="Saisir 4 chiffres")
  Loop While Len(Nombre) <> 4 And Nombre<>False
  If Nombre = False Then   MsgBox "Annulé"  Else   MsgBox Nombre
End Sub

Permet de tester le bouton Annuler

Bisson
Merci Nicole pour ce code. Cependant, il ne fonctionne pas comme il le faudrait.
Je l'ai testé ainsi, jusqu'à 3 chiffres la 'InputBox' ne se ferme pas, jusque là c'est bon.
Mais même avec 4 chiffres, elle ne se ferme pas.
Pour test, j'ai saisi 5 chiffres, ils sont effacés. Puis 6 chiffres, et là le code plante "erreur d’exécution 6, dépassement de capacité". Voilà, je voulais juste te mettre au courant.:)

Une dernière question: Quelle est la différence (s'il y en a) entre InputBox et Application.InputBox

Un grand merci.
Bon WE:D
 

cathodique

XLDnaute Barbatruc
Re,
j'ai fait mes petites tests et voici ce que j'en ai déduit. voir image
Application.InputBox et InputBox.jpg

J'espère que ça sera utile.;):D
 

cathodique

XLDnaute Barbatruc
Bonjour le fil, le forum

@cathodique
Oui moi c'est JM. C'est même écrit dans ma signature ;)
Quand à la différence en les deux InputBox
Voir l'aide en ligne de VBE (touche F1)
Désolé, je deviens de plus en plus bigleux:oops::p (pas fais attention à la signature):D
Quant à l'aide, je ne sais pas pourquoi mais j'ai un souci sur mon pc.
J'ai vérifié sur le pc de mon fils, même version 2007; la sienne est mieux documentée.
Bon week-end.:)
 

cathodique

XLDnaute Barbatruc
Re

@cathodique
Tu dis "même version 2007"
Mais ton profil indique Excel 2010

Au final quelle version utilises-tu vraiment?
Re,
@Staple1600
Autant pour moi, je suis vraiment confus:oops::oops::oops:. Toutes mes excuses, j'utilise la version 2007.
J'avais mis à jour vers 2010 mais j'ai eu un gros problème sur mon pc.
J'ai effectué une restauration et du coup revenu à 2007.:D
Bon Week-end;)
nb: profil mis à jour
 

Discussions similaires

Réponses
8
Affichages
651