Excel 2007 : Somme si valeur sans symbole <

Résolu
Matteus -  
 Matteus - 11 févr. 2015 à 20:14
Bonjour,

Je n'ai pas trouvé depuis des heures un moyen d'additionner des valeurs d'un tableau qui n'ont pas le symbole "<" sans macro.

Exemple de tableau :
colonne A1 à A10 : élément chimique (ex : Antimoine, Cuivre, Fer, etc.)
colonne B1 à B10 : valeurs trouvés (ex : 100,01 ; < 21,03 ; 0,001 ; < 10,0 ; etc.)

Je dois faire la somme des valeurs en B1 à B10 (facile avec =somme(B1:B10))
Je dois faire aussi la somme des détectés (ceux qui n'ont pas de "<" devant la valeur).

Connaissez-vous une formule simple qui permet de faire cette addition ?

Merci beaucoup !!!


A voir également:

3 réponses

ozone_ Messages postés 1518 Date d'inscription   Statut Membre Dernière intervention   478
 
Salut,

Tu veux dire :
Je dois faire aussi la somme des détectés (ceux qui ont un "<" devant la valeur). 

?

Car avec ton code jusqu'à maintenant tu peux faire la somme de tes éléments exceptés ceux qui commence par "<" n'est-ce pas ?
0
Matteus
 
Non, les éléments détectés sont ceux qui n'ont pas de "<".
0
Matteus
 
De plus, lorsque je fais la somme de B1 à B10, ça additionne tout (valeur avec et sans le "<").
0
ozone_ Messages postés 1518 Date d'inscription   Statut Membre Dernière intervention   478
 
Peux tu mettre ton fichier à disposition sur :
https://www.ct.com/
et de répondre ici avec le lien de ton fichier !

Merci
0
Matteus > ozone_ Messages postés 1518 Date d'inscription   Statut Membre Dernière intervention  
 
Voilà !

http://ct.com/?EBlsXjy9Qwe
0
ozone_ Messages postés 1518 Date d'inscription   Statut Membre Dernière intervention   478
 
Les nombres qui commencent par "<" sont considérés comme des nombres et non du texte ce à quoi je m'attendais !

Le format de ces nombres à été modifiés ce qui rends la chose plus difficile.
A t'on le droit d'écrire dans la cellule "< 0.05" plutôt que d'avoir à changer le format ?
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 432
 
Bonjour

curieux?
si vous faites la somme de B1;B10 avec le code SOMME(B1:B10) les valeurs averc signe ne sont pas prises en compte (ce sont des textes)

si vous voulez la somme des valeurs avec signes:
essayez celle ci, matricielle, à entre avec la touche enter en maintenant ctrl et shift enfoncées:
elle dois se retrouver entre accolades dans la barre de formule

=SOMME(SI(B1:B10<>"";SUBSTITUE(B1:B10;"<";"")*1))-SOMME(B1:B10)

crdlmnt

Errare humanum est, perseverare diabolicum
0
ozone_ Messages postés 1518 Date d'inscription   Statut Membre Dernière intervention   478
 
Non justement dans son fichier les nombres sont bien des nombres, juste le format de ceux ci à été modifier pour afficher "<" devant eux.

Ce qui change la donne !
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 432
 
Alors vous ne pouvez pas différencier les valeurs qui restent d'origine quelques soit (le format., à moins que ce format soit obtenu avec une mise en forme conditionnelle, auquel cas on pourrait utiliser la formule de MFC)
Il faut alors er par VBA, mais ce n'est pas de mon ressort
bonne chance
0
Matteus
 
Effectivement, il s'agit de nombre avec un format personnalisé.

Lorsqu'on utilise la fonction =cellule("format";[cellule]) sur une cellule de format nombre, on obtient F1.

On obtient la même chose sur une cellule avec le format personnalisé (c'est-à-dire avec le "<"). Comme s'il était de même format...
0
Matteus
 
Je suis en train de me dire la même chose... VBA semble ma solution.
0
ozone_ Messages postés 1518 Date d'inscription   Statut Membre Dernière intervention   478
 
Sauf si on peut changer le format pour les mettre tous aux même niveaux et dans ce cas c'est possible sans VBA.
0
Matteus
 
Merci à Ozone_, il a trouvé la solution (à un détail près).

La solution dans une colonne ou feuille masquée :

=SI(GAUCHE(B1;1)="<";CNUM(SUBSTITUE(B1;B1;0));B1)

Où si le chiffre a un <, il est transformé en 0.

Lorsque j'additionne les données, j'obtiens ce que je cherchais (c'est-à-dire les données qui n'avait pas de 0)

Merci Ozone_, ça marche !
0
ozone_ Messages postés 1518 Date d'inscription   Statut Membre Dernière intervention   478
 
Dans ce cas, tu peux remplacer la formule par :
=SI(GAUCHE(B1;1)="<";0;B1)

Tout simplement !

Et pas de problème si ça peut t'aider ;)
0
Matteus
 
Merci beaucoup : des heures de temps à chercher :)
0