Additionner tous les premiers nombres de mes cellules

Insigma

XLDnaute Nouveau
Bonjour

1. Je voudrais additionner le premier chiffre qui se situe à gauche de chaque cellule allant de A1 à C1

A1 - B1 - C1
texte - 844 - 754

> Le total serait ici 15 (8+7)

2. Bon déjà ça j'y arrive pas :(
Dans un deuxième temps, ça se complique.. car si mon nombre est sur 4 chiffres (je n'ai que 3 ou 4 chiffres à chaque fois, ou du texte), il faut que je prenne non plus le premier, mais les 2 premiers.

A1 - B1 - C1 - D1
texte - 844 - 754 - 1012

> Le total serait ici 25 (8+7+10)

merci !
Stan
 

sousou

XLDnaute Barbatruc
Re : Additionner tous les premiers nombres de mes cellules

Bonjour Insigma
test cette formule pour la ligne 6 ici
=SI(NBCAR(B6)<43;GAUCHE(B6;1);GAUCHE(B6;2))+SI(NBCAR(C6)<4;GAUCHE(C6;1);GAUCHE(C6;2))+SI(NBCAR(D6)<4;GAUCHE(D6;1);GAUCHE(D6;2))
 

Efgé

XLDnaute Barbatruc
Re : Additionner tous les premiers nombres de mes cellules

Bonjour Insigma, sousou, le fil, le forum,
Une proposition par fonction personalisée :
VB:
Private Function Cpt(L As Range)
Dim Var&, C As Range
Application.Volatile
For Each C In L
    If Len(C) > 2 Then If IsNumeric(C) Then Var = Var + Mid(C, 1, Len(C) - 2)
Next C
Cpt = Var
End Function
Cordialement
 

Pièces jointes

  • Insigma.xls
    18 KB · Affichages: 57

JNP

XLDnaute Barbatruc
Re : Additionner tous les premiers nombres de mes cellules

Bonjour le fil :),
Une formule qui permet d'augmenter le nombre de colonnes facilement, comme la fonction d'Efgé :p...
Code:
=SOMMEPROD((GAUCHE(B1:D1;NBCAR(B1:D1)-2)*1))
Bonne journée :cool:
 

Insigma

XLDnaute Nouveau
Re : Additionner tous les premiers nombres de mes cellules

Merci à tous pour ces nombreuses pistes !
J'aime plus particulièrement la dernière solution qui me semble la plus simple.

Est-ce qu'on peut juste conditionner en plus sur le fait que ma cellule peut être du texte ?

J'avais pensé faire un truc comme ça :
=SOMMEPROD(SI(ESTNUM(GAUCHE(A1:D1));(ENT(A1:D1/100)*1)))
mais ça ne fonctionne pas.

Merci
 

Tibo

XLDnaute Barbatruc
Re : Additionner tous les premiers nombres de mes cellules

Bonjour,

Tu n'étais pas loin.

Une solution avec une formule matricielle :

Code:
=SOMME(SI(ESTNUM(A1:D1);(ENT(A1:D1/100)*1)))

Formule matricielle à valider par CTRL + MAJ + ENTREE

@+
 

Insigma

XLDnaute Nouveau
Re : Additionner tous les premiers nombres de mes cellules

Je remonte ce sujet plutôt que d'en ouvrir un nouveau.

Bonjour !

Je reprends mon exemple précédent, j'y ajoute des cellules
A1 - B1 - C1 - D1 - E1 - F1 - G1 - H1
texte - 844 - 754 - 1012 - texte - texte - 481 - 684

Est-ce qu'il est possible d'utiliser la formule de Tibo, non plus sur la plage de cellules nommée A1 à H1 mais en ciblant les cellules qu'on veut tester ?

Pour être plus clair, je ne veux tester que les cellules D1, G1 et H1. Ce qui donnerait 20 (10+4+6)

merci..
 

Insigma

XLDnaute Nouveau
Re : Additionner tous les premiers nombres de mes cellules

Il peut y avoir du texte ;)
C'est d'ailleurs bien là mon problème car il faut que je conserve mon premier test avec le ESTNUM, et je pensais naïvement que
=SOMME(SI(ESTNUM(D1;G1;H1);(ENT(D1;G1;H1/100)*1)))
aurait fonctionné. Mais non !
 

Insigma

XLDnaute Nouveau
Re : Additionner tous les premiers nombres de mes cellules

Plutôt que d'avoir à changer la formule tous les mois (car tout ceci est pour un tableau de service des heures travaillées du personnel, et dans le dernier cas sur lequel on vient de m'aider, on traite les dimanches), est-il possible de paramétrer dans un tableau les cellules correspondant aux dimanches :

Code:
 Dimanches :
... AA
1. D1
2. G1
3. H1

et donc ma formule serait toujours
=SOMME(SI(ESTNUM(D1);ENT(D1/100));SI(ESTNUM(G1);ENT(G1/100));SI(ESTNUM(H1);ENT(H1/100)))

sauf que si je prenais les valeurs de mon tableau AA1, AA2 et AA3, ce serait beaucoup plus pratique !
=SOMME(SI(ESTNUM(AA1);ENT(AA1/100));SI(ESTNUM(AA2);ENT(AA2/100));SI(ESTNUM(AA3);ENT(AA3/100)))

J'espère que je suis clair ; en d'autres termes, est-il possible de traiter les coordonnées d'une cellule dans une cellule ?

Merci
 

hoerwind

XLDnaute Barbatruc
Re : Additionner tous les premiers nombres de mes cellules

Re,

C'est faisable par la fonction INDIRECT(), mais cela va fortement allonger la formule, d'autant plus si il y a plus de trois cibles.
Il me semble plus simple d'établir les calculs individuels en colonne AAB, et pourquoi pas avec une condition préliminaire qui ne retient que les dimanches.

Si cela ne te semble pas clair, mets un exemple en pièce jointe, ce sera plus facile pour te montrer comme faire.
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 206
Messages
2 086 219
Membres
103 158
dernier inscrit
laufin