Additionner les chiffres d'une même cellule

Bonjour,

comment additionner les chiffres d'une même cellule .
exemple : la cellule se présente comme suit : "02/12/80". je voudrais faire la somme de ces chiffres soit 02+12+80 = 94.
Pourriez vous m'aider s'il vous plait , ça me fera gagner beaucoup de temps.

1000 mercis

--
raouf

9 réponses

  1. Contributeur
    Bonjour à tous,

    avec une fonction personnalisée à mettre dans un module standard :
    Function nbPassagers(ch As String) As Double
        Dim i As Long, tmp
        tmp = Split(ch, " ")
        tmp = Split(tmp(UBound(tmp)), "/")
        For i = 0 To UBound(tmp)
            nbPassagers = nbPassagers + tmp(i)
        Next i
    End Function 

    Sur feuille :
    =nbPassagers(A2)

    à tirer vers le bas.
    https://www.cjoint.com/c/IKCq7Cppfy7
    eric
    1. Bonjour,

      Est-ce que la cellule est une date ??? et est-ce que les guillemets sont présents dans la cellule ???

      Si OUI à la première question et NON à la seconde, alors peut-être avec la cellule A1 renseignée

      =SOMME(JOUR(A1);MOIS(A1);DROITE(ANNEE(A1);2))

      Cordialement
      1. tout d'abord je vous remercie pour votre réactivité.
        Non, la cellule n'est une date
        Non, il n'y a pas de guillemets
    2. Bonjour à vous deux

      En principe si tu entres 02/12/80 dans une cellule Excel le considère comme une date

      As tu essayé la formule donnée par Papyluc ? Fonctionne-t-elle ?

      Dans le cas contraire ce serait bien que tu fournisses un exemple de ton fichier en le postant sur mon-partage.fr, en copiant le lien créé et en revenant le coller ici

      Cdlmnt
      Via
      1. Re:

        Salutations via

        En attendant de voir le fichier

        Si la cellule est du texte et non une date

        Toujours la même référence à A1 essayer cette formule

        =SOMME(GAUCHE(A1;2);STXT(A1;TROUVE("/";A1)+1;2);DROITE(A1;2))

        Cordialement
        1. Bonjour,
          Au fait c'est fichier qui enregistre le nombre de passager sur un vol donné selon la classe tarifaire :
          F: first class; C: Business class; Y: economic class.
          et moi j'aurais besoin de la somme de la totalité des classes par vol.
          la cellule a un format standard.

          From To Pax(F/C/Y)
          TUN IST 0/8/131
          TUN IST 0/15/118
          TUN BLQ 0/4/97
          TUN ALG 0/8/143
          TUN NIM 0/7/120
          TUN NKC 0/7/129
          TUN VIE 0/0/93
          TUN NCE 0/0/128
          TUN DJE 0/0/35
          TUN MRS 0/0/151
          TUN DJE 0/0/34
          TUN CZL 0/0/81
          TUN CMN 0/12/143
          TUN ORY 0/20/131
          TUN ORY 0/8/149
          TUN ORY 0/16/137
          TUN FRA 0/7/78
          TUN LYS 0/6/139
          TUN FCO 0/1/71
          TUN MXP 0/16/118
          TUN BRU 0/8/140
          TUN LGW 0/3/89
          TUN CAI 0/12/102
          TUN CKY 0/4/133

          1. Payluc t'avais mis sur la voie de la solution mais c'est plus complexe car il y a différentes configurations,
            alors avec la valeur initiale en C2, en D2 mettre al formule :
            =SOMME(CNUM(GAUCHE(C2;TROUVE("/";C2)-1));CNUM(STXT(C2;TROUVE("/";C2)+1;TROUVE("/";C2;3)-TROUVE("/";C2)-1));CNUM(DROITE(C2;NBCAR(C2)-TROUVE("/";C2;3))))

            Cdlmnt
            Via
            1. Re:
              Formule très alambiquée qui chez moi donne une erreur VALEUR et je n'arrive pas à voir où est le problème.
              Cordialement
            2. Bonjour à tous,

              Alambiquée, je suis d'accord et en erreur si le premier nombre comporte plus d'un chiffre.
              Essaie avec celle-ci un peu plus alambiquée !
              =SOMME(CNUM(GAUCHE(C2;TROUVE("/";C2)-1));CNUM(STXT(C2;TROUVE("/";C2;1)+1;TROUVE("/";C2;TROUVE("/";C2;1)+1)-1-(TROUVE("/";C2;1)-1)-1));CNUM(DROITE(C2;NBCAR(C2)-TROUVE("/";C2;TROUVE("/";C2)+1))))


              Cordialement

              PS : On se fait plaisir, mais formule difficilement maintenable quand même !
            3. Salutations ALS35

              Là c'est un peu mieux, il n'y a plus d'erreur pour les nombres 2 et 3 mais c'est toujours en erreur pour le premier. Je vais continuer à creuser pour comprendre.

              Cordialement
            4. Salutations PapyLuc51,

              Attention dans la cellule il doit juste y avoir 0/8/131 et non pas TUN IST 0/8/131 (ce que j'avais compris au début)

              Cordialement
          2. Re

            Je m'étais absenté, de retour je trouve vos remarques,
            exact je n'avais pas fait le test avec 2 chiffres au début, donc il suffit de remplacer les 3 dans ma formule par des 4 :
            =SOMME(CNUM(GAUCHE(C2;TROUVE("/";C2)-1));CNUM(STXT(C2;TROUVE("/";C2)+1;TROUVE("/";C2;4)-TROUVE("/";C2)-1));CNUM(DROITE(C2;NBCAR(C2)-TROUVE("/";C2;4))))

            Je n'arrive pas à trouver par contre moins alambiqué !

            Cdlmnt
            1. Salutations à tous,

              Bien eriic j'en prends note.

              Pour en revenir aux formules j'ai trouvé celle-ci très "" alambiquée "" qui permet d'additionner les 3 nombres en tenant compte de leur longueur.

              =SOMME(CNUM(GAUCHE(DROITE(C2;NBCAR(C2)-TROUVE(" ";C2)-4);TROUVE("/";DROITE(C2;NBCAR(C2)-TROUVE(" ";C2)-4))-1));CNUM(GAUCHE(STXT(C2;TROUVE("/";C2)+1;100);TROUVE("/";STXT(C2;TROUVE("/";C2)+1;100))-1));CNUM(DROITE(DROITE(C2;NBCAR(C2)-TROUVE("/";C2));NBCAR(DROITE(C2;NBCAR(C2)-TROUVE("/";C2)))-TROUVE("/";DROITE(C2;NBCAR(C2)-TROUVE("/";C2))))))

              Cordialement
              1. Contributeur
                Bonjour papyluc,

                Bonne note de quoi ? Qu'ai-je dit ? :-)
                eric
              2. Bonjour PayLuc51,
                Ben j'avais l'impression que ma formule en #9 le faisait déjà, mais avec ta dernière formule j'ai une erreur.
                https://www.cjoint.com/c/ILfqgGsGyDK
                Salutations à tous :-)
              3. @ALS35Désolé je n'avais pas compris qu'il y avait 3 colonnes, je pensais que c'était un ensemble alphanumérique dans une même cellule ma formule est faite pour ça.

                cordialement