Pb pour forcer à écrire en numérique
Résolu
Louloude74
Messages postés
62
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
A voir également:
- Pb pour forcer à écrire en numérique
- Forcer demarrage pc - Guide
- Télévision numérique - Guide
- Forcer la reinitialisation pc - Guide
- Forcer suppression fichier - Guide
- Forcer à quitter - Guide
3 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
tu pourrais, soit ne pas transformer en 6 un "-" en début du texte, soit ne changer que si aucun caractère n'est un chiffre.
A moins que tu choisisses une autre option?
tu pourrais, soit ne pas transformer en 6 un "-" en début du texte, soit ne changer que si aucun caractère n'est un chiffre.
A moins que tu choisisses une autre option?
Bonjour
avec quel vb tu codes?
avec quel vb tu codes?
- VBS
- VBA -> précisez:
- Word
- Excel
- Access
- Powerpoint
- Autre
- VB6 (ou antérieur, précisez)
- VB.Net - précisez la Framework et ->
- Winform
- WPF
- Autre
Bonjour
mettre un KeyPress dans ton userform
A+
Maurice
mettre un KeyPress dans ton userform
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case 44, 48 To 57
KeyAscii = KeyAscii
Case 46
KeyAscii = 44
Case Else
KeyAscii = 0
End Select
End Sub
A+
Maurice
Merci à tous pour vos réponses.
C'est du VBA Excel Office 365.
Suite au conseil de yg_be et afin d'arriver plus facilement à mes fins, j'ai ajouté une CheckBox à mon UserForm.
Si cochée, je multiplie la valeur par -1.
C'est pour moi plus simple et fonctionne très bien avec ma fonction du départ.
Encore merci à tous.
C'est du VBA Excel Office 365.
Suite au conseil de yg_be et afin d'arriver plus facilement à mes fins, j'ai ajouté une CheckBox à mon UserForm.
Si cochée, je multiplie la valeur par -1.
C'est pour moi plus simple et fonctionne très bien avec ma fonction du départ.
Encore merci à tous.
Désolé pour ma réponse tardive.
Comment savoir si le chiffre chiffre entré sera négatif ou pas. Comment reconnaitre "-66" de "666" ?
Soit, cocher une CheckBox pour une valeur négative.
Soit, considérer le 1er caractère comme un sigle "+" ou "-". Donc, si le chiffre commence par "+" ou "=", le chiffre est positif. Si le chiffre commence par "-" ou "6", le chiffre est négatif.
Dans cette dernière solution comment tester dans l'évènement change de la TexteBox la saisie au fur et mesure de la frappe ? Tester le 1er nombre, puis, le second, puis, le troisième, etc...
Actuellement, je change après chaque frappe toute la saisie.
Par avance merci.
Ludwig
je pense que ta fonction est tellement mal écrite que tu oublies toutes les autres possibilités.
si j'étais toi, je prendrais quelques exemples de chaines frappées, et, pour chaque exemple, je déciderais du résultat attendu.
En fait, j'aimerais tester que le caractère qui vient d'être saisi, et non, comme je le fais, tester, à chaque fois toute la chaine de caractères. Ainsi, je pourrai tester le 1er caractère, le changer si besoin puis passer au suivant sans tester à nouveau le 1er. Et ainsi de suite.
J'ai remplacé le 1 (Où commencer la recherche du caractère à changer) par len(Texte) afin de remplacer que le dernier caractère mais j'ai un débogage.
Pardon. Dans ce cas précis, je charge une TextBox d'un UserFrom par la valeur d'une cellule.
Je vais t'avouer un truc, je ne vois pas les autres possibilités.
Je vais continuer ma recherche.
Merci .