Traîter 0 (Zéro) comme un chiffre
mohalesage
-
mohalesage Messages postés 162 Statut Membre -
mohalesage Messages postés 162 Statut Membre -
Bonjour l'Ami,
Je me suis heurté un problème inattendu. Quand je demande à l'application de m'envoyer le message ( Cette zone est réservée aux chiffres ) chaque fois que je saisie une lettre dans un textbox en écrivant le code suivant
tant que je saisie un chiffre supérieur à 0, le code s'exécute bien, si jamais je saisie le chiffre 0 ( Zéro ), l'application m'envoie le message ( Cette zone est réservée aux chiffres )
Je n'y rien compris, Merci pour votre aide
Je me suis heurté un problème inattendu. Quand je demande à l'application de m'envoyer le message ( Cette zone est réservée aux chiffres ) chaque fois que je saisie une lettre dans un textbox en écrivant le code suivant
if text1.text = 0 then msgbox"Cette zone est réservée aux chiffres" text1.text="" text1.setFocus exit sub end if
tant que je saisie un chiffre supérieur à 0, le code s'exécute bien, si jamais je saisie le chiffre 0 ( Zéro ), l'application m'envoie le message ( Cette zone est réservée aux chiffres )
Je n'y rien compris, Merci pour votre aide
12 réponses
-
-
-
Salut,
essaye comme cela
If Not IsNumeric(TextBox1) Then
If TextBox1 = "" Then Exit Sub
MsgBox "Cette zone est réservée aux chiffres"
TextBox1.Text = ""
End If
-
Salut l'Ami,
Comme je vous l'ai signalé dans ma première question. Le code écrit était
if val(Text1.Text) = 0 then msgbox"Cette zone est réservée aux chiffres" Text1.text="" Text1.SetSocus exit sub end if
ce code donne le même resultat que celui que vous m'aviez proposé, qui est ci dessous:
If Not IsNumeric(TextBox1) Then If TextBox1 = "" Then Exit Sub MsgBox "Cette zone est réservée aux chiffres" TextBox1.Text = "" End If
Merci pour votre tentative
A plus -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Re,
serait il possible de voir un bout de ton fichier sans note confidentielle que tu peux joindre avec ce lien
https://www.cjoint.com/
le code que je t'ai donné, fonctionne parfaitement pour l'avoir essayé.
Il doit y avoir autre chose qui coince
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir. -
Bonjour l'Ami,
veuillez m'excuser. C'est moi qui a mal écrit le code.
J'ai réessayer avec votre proposition, et l'application
enfin reconnait le Zéro (0) comme un chiffre.
toute ma reconnaissance l'Ami
A plus -
Bonjour l'Ami,
J'ai une question à vous poser.
Comment pourrai je vider une zone ( Text ) en lecture seulement.
la procédure, c'est quant je valide une quelconque opération, toutes
les zones doivent être vidées.
les zone actives ( c'est dire saisissable ) se vident, les zones en lecture ne se vident pas.
Merci pour votre aide
A plus -
Re,
Il faudrait voir ton fichier pour apprécier sa structure et te donner un code adapté.
tes contrôles sont sur une userform et si je comprends ta demande, après enregistrement des données tu veux vider tous tes contrôles,
c'est cela !
-
Bonjour l'Ami,
C'est justement ce là. Les données sont déjà enregistrées, pour les appeler, j'ai utilisé la requête SQL, aussi :
RS.MoveFirst
lblFerme.Caption = RS![FERME]
lblCaisses.Caption = RS![NBRECAISSE]
ce que je n'arrive pas à faire jusqu'à maintenant c'est les faire diparaître comme je le fais avec les zones textbox normales
j'espère vous donner plus d'explications
A plus -
Re,
le problème est que tu as renommer tes texbox c'est peut être plus parlant pour toi mais cela complique les codes. je te conseille de leur redonner leurs noms par défaut textbox1, texbox2 etc ...
dans ce cas le code peut être très simple, tu colle la variable en début de code
Dim effac As Object
puis ce code en fin de procédure, et tous tes textbok seront vide
For Each effac In Me.Controls
If effac.Name Like "TextBox*" Then effac.Value = ""
Next
-
Re,
utilise plutôt ce code qui prendra le texbox nommé
Dim effac As Object
For Each effac In Me.Controls
If TypeName(effac) = "TextBox" Then effac.Text = ""
Next
-
Bonjour l'Ami,
Je crois que je n'ai pas bien expliqué le problème. Je le reconnais, mais c'était par inattention.
mes objets en question étaient :
combobox avec la propriété DropDown List
label.caption
mais quand j'ai changé la propriété de combobox à DropDown Combobox
et les label.caption aux TextBox avec la propriété Loked à True
j'ai arrivé à réussir de faire vider ces objets une fois l'opération en cours est validée. et ce par :
cmbBon =""
Tkilos=""
TNbreCses=""
Merci pour tout l'ami, avec toute ma reconnaissance
A plus