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

XL 2019 Compter uniquement les chiffres

  • Initiateur de la discussion Initiateur de la discussion Mathieu18
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Mathieu18

XLDnaute Junior
Bonjour la compagnie,

je vous permets de vous exposer ma problématique qui il est vrai est un peu aberrante au niveau construction d'un tableau mais qui malheureusement répond au besoin demandé.


En colonne B (noir), les jours du mois sont entrée de manière aléatoire 1 2 8 14 17 ou 1-2-8-14-17 ou encore 1,2,8,14,17 donc des chiffres des espaces des virgules des tirets...

Le besoin est de pouvoir compter de quand il y a "1", quand il y a "2", quand il y a "27" et rien d'autre. Et ce de 1 à 31 (jour du mois) donc pas un souci de mettre la meme formule 31 fois à coup de +.

Après plusieurs essais infructueux, je me tourne vers vos lumières dans l'espoir d'une solution, je vous remercie !
 

Pièces jointes

Bonjour Mathieu,
En PJ un essai avec une fonction perso :
VB:
Function Compte(N)
    Dim Chaine$, i%, T
    Chaine = ""
    For i = 1 To Len(N)
        If Not IsNumeric(Mid(N, i, 1)) Then
            Chaine = Chaine & " "
        Else
            Chaine = Chaine & Mid(N, i, 1)
        End If
    Next i
    T = Split(Chaine, " ")
    For i = LBound(T) To UBound(T)
        If T(i) <> "" Then Compte = Compte + 1
    Next i
End Function
 

Pièces jointes

Alors idéalement si on pouvait avoir la solution avec une formule plutot qu'une macro ça serait top, ça me permettrait d'avoir la main dessus.
J'ai déjà cette solution au format Google sheet : =NB(split(REGEXREPLACE(B7;"[^\d]";"~");"~"))

Si un connaisseur peut la convertir au format excel ça serait parfait !

Je vous remercie !
 
Bonsoir le fil

Puisque Excel 2019, une autre formule
(fonctionne aussi avec Excel 2013 avec validation matricielle)
Code:
=NBVAL(FILTRE.XML("<j><m>"&SUBSTITUE(SUBSTITUE(SUBSTITUE(A1;"-";" ");",";" ");" ";"</m><m>")&"</m></j>";"//m"))
Ici fonctionne avec l'espace, le tiret ou la virgule comme séparateur entre les chiffres.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
11
Affichages
766
Réponses
38
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…