Recuperer valeur d'un textbox [Résolu]

astouz2000k 50 Messages postés samedi 2 juillet 2005Date d'inscription 2 mai 2013 Dernière intervention - 6 oct. 2009 à 15:20 - Dernière réponse : Claiyah 580 Messages postés mercredi 20 août 2008Date d'inscription 20 avril 2010 Dernière intervention
- 7 oct. 2009 à 17:17
bonjour,

dans un textbox j'ai ce type de données :
AA1
BB12
ABC123
A123

je voudrais pouvoir séparer la partie text de la partie chiffre.

merci
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 7 oct. 2009 à 16:55
3
Merci
.... VB.NET !!

Dim iPos As Integer, j As Integer
For j = 0 To text1.text.Length - 1
If Char.IsDigit(text1.text(j)) Then
iPos = j
Exit For
End If
Next j

' affichage résultat, pour chaque ligne :
If j = 0 Then
MessageBox.Show("'" & text1.text & "' ne contient aucun caractère numérique")
Else
text2.text = text1.text.Substring(0, iPos)
text3.text = text1.text.Substring(iPos))
End If

Merci PCPT 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Commenter la réponse de PCPT
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 6 oct. 2009 à 16:04
0
Merci
salut,

il faut parcourir le tableau de tes données, et marquer le caractère qui est un numérique :



Private Sub Form_Load()
Dim text As String
text = "AA1" & vbCrLf & _
"BB12" & vbCrLf & _
"ABC123" & vbCrLf & _
"A123"

' tableau pour chaque ligne
Dim sLines() As String, i As Integer, iPos As Integer, j As Integer
sLines = Split(text, vbCrLf)

' boucle
For i = LBound(sLines) To UBound(sLines)
' tant que ce n'est pas un chiffre, on lit le caractère suivant
iPos = 0
For j = 1 To Len(sLines(i))
If IsNumeric(Mid$(sLines(i), j, 1)) Then
iPos = j
Exit For
End If
Next j

' affichage résultat, pour chaque ligne :
If j = 0 Then
MsgBox "'" & sLines(i) & "' ne contient aucun caractère numérique"
Else
MsgBox "'" & sLines(i) & "' : " & vbCrLf & _
Left$(sLines(i), iPos - 1) & vbCrLf & _
Mid$(sLines(i), iPos)
End If
Next i

Unload Me
End Sub


++
[hr]
Commenter la réponse de PCPT
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 6 oct. 2009 à 16:37
0
Merci
je viens de me rendre compte que tu étais en VB.NET :



Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

' tableau pour chaque ligne
Dim sLines() As String = {"AA1", "BB12", "ABC123", "A123"}

Dim i As Integer, iPos As Integer, j As Integer, c As Char

' boucle
For i = sLines.GetLowerBound(0) To sLines.GetUpperBound(0)
' tant que ce n'est pas un chiffre, on lit le caractère suivant
iPos = 0
For j = 0 To sLines(i).Length - 1
If Char.IsDigit(sLines(i)(j)) Then
iPos = j
Exit For
End If
Next j

' affichage résultat, pour chaque ligne :
If j = 0 Then
MessageBox.Show("'" & sLines(i) & "' ne contient aucun caractère numérique")
Else
MessageBox.Show(String.Format("'{1}' : {0}{2}{0}{3}", _
Environment.NewLine, _
sLines(i), _
sLines(i).Substring(0, iPos), _
sLines(i).Substring(iPos)))
End If
Next i


End Sub


(à part la syntaxe tu remarqueras que le fonctionnement est évidemment strictement identique)

++
Commenter la réponse de PCPT
astouz2000k 50 Messages postés samedi 2 juillet 2005Date d'inscription 2 mai 2013 Dernière intervention - 6 oct. 2009 à 18:06
0
Merci
merci

je me suis mal exprimé sur ma question

en fait j'ai qu'une de ces valeurs d'ecrite dans le textbox.

AA1 ou ABC123 ou A123 etc......

mais les chiffres et les lettres sont aléatoires.

merci
Commenter la réponse de astouz2000k
Claiyah 580 Messages postés mercredi 20 août 2008Date d'inscription 20 avril 2010 Dernière intervention - 6 oct. 2009 à 18:56
0
Merci
les séparer comment ?
explique un peut ce que tu veut faire
Commenter la réponse de Claiyah
astouz2000k 50 Messages postés samedi 2 juillet 2005Date d'inscription 2 mai 2013 Dernière intervention - 6 oct. 2009 à 21:24
0
Merci
ok,
en fais j'ai une valeur dans une textbox composé de chiffres et de lettres.

je souhaite séparer les chiffres des lettres.
par exemple :
ex 1:
textbox 1 = ab199
ce qui donne
textbox 2 = ab
textbox 3 = 199
ex 2 :
textbox 1 : zze1
ce qui donne
textbox 2 = zze
textbox 3 = 1

merci
Commenter la réponse de astouz2000k
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 6 oct. 2009 à 22:10
0
Merci
.... "qui peut le plus peut le moins" !!!!

le code indiqué "en boucle" fonctionne d'autant plus "sans boucle" !!!

[hr]
Commenter la réponse de PCPT
Claiyah 580 Messages postés mercredi 20 août 2008Date d'inscription 20 avril 2010 Dernière intervention - 7 oct. 2009 à 15:54
0
Merci
à mettre dans un bouton si tu veux :

Dim i As Long, car As String
For i = 1 To Len(Text1.Text)
car = Mid(Text1.Text, i, 1)
If IsNumeric(car) Then
Text3.SelStart = Len(Text3.Text)
Text3.SelText = car
Else
Text2.SelStart = Len(Text2.Text)
Text2.SelText = car
End If
Next


No comment
Commenter la réponse de Claiyah
Claiyah 580 Messages postés mercredi 20 août 2008Date d'inscription 20 avril 2010 Dernière intervention - 7 oct. 2009 à 17:17
0
Merci
ah j'ai pas vue désolé


No comment
Commenter la réponse de Claiyah

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.