Bonjour a tous,
SVP je cherche une fonction qui m'enlèvera les caracteres alphabetique d'une chaine alphanumerique.
par exemple je donne la chaine "A123B2" et ça me retourne "1232".
Merci d'avance.
Bonjour a tous,
SVP je cherche une fonction qui m'enlèvera les caracteres alphabetique d'une chaine alphanumerique.
par exemple je donne la chaine "A123B2" et ça me retourne "1232".
Merci d'avance.
Bonjour,
Au bout du compte (toutes tes explications autour du pot) ===>> extraire d'une chaine les caractères numériques !
Utilise donc une boucle avec les fonctions Mid et Isnumeric !
Exemple, donc :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 toto = "A123B2" titi = "" For I = 1 To Len(toto) If IsNumeric(Mid(toto, I, 1)) Then titi = titi & Mid(toto, I, 1) End If Next MsgBox titi
Bonjour,
sans préjuger que ça n'existe pas de façon native
tu peux aussi utiliser les codes ASCII etc... etc..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Function Conveticeur(ByVal chene As String) As Long Dim I Dim Resultt For I = 1 To Len(chene) If IsNumeric(Mid(chene, I, 1)) Then Resultt = Resultt & Mid(chene, I, 1) End If Next I Conveticeur = Resultt End Function Sub toto() Dim chene As String chene = "a12z56t" MsgBox Conveticeur(chene) End Sub
cordialement,
rajout, OUPS ! collission avec Ucfoutou
Didier
Bonjour à tous,
saud mauvaise compréhension de ma part du terme alphanumérique, il me semble qu'on ne traite ainsi pas les autres caractères ex :;=!() et cela me parait incomplet.
Mais il est vrai que le définition de Alphanumérique est sujette à variation.
Bonjour,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Sub toto() Dim chene As String chene = "a12;z( -5 6=t" MsgBox Conveticeur(chene) End Sub
renvoie bien 1256
espace, (, -, ; sont bien considérés par le vba comme non numériques, il semble que ce soit ce à quoi il faut se fier, sauf à créer une exception propre à nsqualli pour ses besoins ?
cordialement,
Didier
Merci bcp pour vos reponses, des macros comme vous avez proposer je l'ai deja fais, mais je voulais savoir s'il y'a une fonction deja existante genre IsNumeric mais qui traite caractere par caractere.
bon apparement y'en a pas.
Merci bcp a vous tous.
Exemple:
Inscrivons en cellule A1 : 1234abc
Puis dans en cellule A2 ou tout autre inscrire.
=1*STXT(A1;EQUIV(VRAI;ESTNUM(1*STXT(A1;LIGNE($1:$9);1));0);NB(1*STXT(A1;LIGNE($1:$9);1)))
Important Vous devez entrer ces formules en tant que matrices en appuyant sur CTRL+MAJ+ENTRÉE.
Après CTRL+MAJ+ENTRÉE lorsque vous sélectionner la cellule le contenu doit apparaitre ainsi :
{=1*STXT(A1;EQUIV(VRAI;ESTNUM(1*STXT(A1;LIGNE($1:$9);1));0);NB(1*STXT(A1;LIGNE($1:$9);1)))}
![]()
Partager