Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

.zip + compter les caractères numériques

C

catherine

Guest
Bonjour à toutes et à tous.

Que de compétences sur ce forum! Chapeau!!!

J'ai le même problème que Monique avait, je ne peux pas lire les .zip en pièce jointe (hiérogliphes!), par contre je peux télécharger les .zip dans la partie downloads, c'est déjà ça.

Au passage, une petite question qui m'intrigue :

comment peut-on compter les caractères numériques d'une cellule alphanum?
Quelq'un a-t-il écrit une superfonction?

Merci pour vos réponses à ces 2 questions. ;-)

@ bientôt.

Catherine
 
T

Ti

Guest
Pour les zip, pas de réponse :-(, mais voilà une fonction qui peut compter les caractères numériques d'une cellule alphanumérique :

Function NbCarNum(Cel As Range) As Long
Dim Boucle As Long, Chaine As String, Car As String * 1
Chaine = CStr(Cel.Value)
For Boucle = 1 To Len(Chaine)
Car = Mid(Chaine, Boucle, 1)
If Car >= "0" And Car <= "9" Then NbCarNum = NbCarNum + 1
Next Boucle
End Function
 
S

STéphane

Guest
bonjour


certains prônent un code du genre suivant

For j% = Len(valeur) To 1 Step -1
If IsNumeric(Mid(valeur, j%, 1)) Or Mid(valeur, j%, 1) = "," Then 'Pour
compenser un comportement
'erratique de Isnumeric avec la virgule décimale
compteur% = compteur% + 1
Else
Exit For 'Évite de faire toute la boucle quand il n'y a plus de caractère
numérique
End If
Next


bye
steph
 
T

Ti

Guest
désolé Stéph, mais je pense que pour la circonstance, tu te compliques un peu la vie. Ceci dit, voilà une illustration des multiples solutions apportées à une même question
 
S

STéphane

Guest
bonjour


ou alors un truc qui revient au même, mais qui est peut-être un peu plus rapide :

Function CountNumChar(cel As Range) As Integer
For i = 1 To Len(cel.Value)
If InStr(1, "0123456789", Mid(cel, i, 1)) Then ctCN = ctCN + 1
Next
CountNumChar = ctCN
End Function

bye
Stéphane
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…