XL 2016 formule somme ou soustraction avec un signe issu d'un menu déroulant...

sbastian

XLDnaute Nouveau
Bonjour,
j'aimerais additionner ou soustraire des valeurs numériques (dans cellules) avec le signe (+ ou -) issu d'un menu déroulant de cellule (données / validation des données), mais uniquement avec une formule excel .
Je sais le faire en VBA, mais je souhaite garder le format xlsx.
Merci pour votre aide !
 

Jacky67

XLDnaute Barbatruc
Bonjour,
j'aimerais additionner ou soustraire des valeurs numériques (dans cellules) avec le signe (+ ou -) issu d'un menu déroulant de cellule (données / validation des données), mais uniquement avec une formule excel .
Je sais le faire en VBA, mais je souhaite garder le format xlsx.
Merci pour votre aide !
Bonjour à tous
Quelque chose comme ceci
Code:
=SI(E2="";"";SI(E2="+";SOMME(A1:B1);A1-B1))
 

Pièces jointes

  • plusoumoins.xlsx
    14.1 KB · Affichages: 7

sbastian

XLDnaute Nouveau
Bonjour à tous
Quelque chose comme ceci
Code:
=SI(E2="";"";SI(E2="+";SOMME(A1:B1);A1-B1))
Bonsoir,
Mais c'est bien sur ! c'est tellement simple ! j’étais aller chercher ailleurs !
Toutefois, en partant de cette base il faut que je regarde ce que cela donne avec plusieurs valeurs à additionner ou à soustraire ( mélange de signes dans l'enchainement des opérations pour une dizaine de valeurs, par exemple)...
En attendant, un grand merci
 

sbastian

XLDnaute Nouveau
Bonsoir,
Mais c'est bien sur ! c'est tellement simple ! j’étais aller chercher ailleurs !
Toutefois, en partant de cette base il faut que je regarde ce que cela donne avec plusieurs valeurs à additionner ou à soustraire ( mélange de signes dans l'enchainement des opérations pour une dizaine de valeurs, par exemple)...
En attendant, un grand merci
Bonjour à tous
Quelque chose comme ceci
Code:
=SI(E2="";"";SI(E2="+";SOMME(A1:B1);A1-B1))
A priori, je ne vois pas comment m'en sortir, sans faire des sous totaux intermédiaires à chaque signe (colonne masquée pour les sous totaux par exemple) afin d’éviter des formules imbriquées illisibles, et qui sont limitées à 7 niveaux il me semble ?
 

Pièces jointes

  • plusoumoins multiples.xlsx
    12.2 KB · Affichages: 3

Jacky67

XLDnaute Barbatruc
A priori, je ne vois pas comment m'en sortir, sans faire des sous totaux intermédiaires à chaque signe (colonne masquée pour les sous totaux par exemple) afin d’éviter des formules imbriquées illisibles, et qui sont limitées à 7 niveaux il me semble ?

Re..
Essaye
Code:
=D2+SOMMEPROD((C4:C14="+")*D4:D14)-SOMMEPROD((C4:C14="-")*D4:D14)
 

Pièces jointes

  • plusoumoins V2.xlsx
    15.7 KB · Affichages: 4
Dernière édition:

sbastian

XLDnaute Nouveau
Bonjour sbastian, Jacky67

Pourquoi utiliser SOMMEPROD() bien plus gourmande en ressources que SOMME.SI() 😜
VB:
=D2+SOMME.SI(C4:C14;"+";D4:D14)-SOMME.SI(C4:C14;"-";D4:D14)

A+


Merci à tous,
J'ai effectivement la bonne solution avec somme.si (que je comprend mieux que sommeprod ?) Je n'ai pas souvenir d'avoir utilisé cette fonction de par le passé, mais son potentiel est remarquable.
pas de sous totaux, pas de colonne masquée... bref, de l'élégance...
Tout seul on va (parfois) plus vite, à plusieurs on va plus loin...
 

Discussions similaires

Réponses
7
Affichages
604

Statistiques des forums

Discussions
314 486
Messages
2 110 107
Membres
110 667
dernier inscrit
andco