Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Aide sur calcul

5 réponses
Avatar
palmieri.jose
Je recherche, sur des cellules disjointes, =E0 faire la somme uniquement
des cellules dont la valeur est >0

Je n'y arrive ni par SI ni par SOMME.SI

Merci de votre aide

5 réponses

Avatar
Ellimac
Bonjour,

Sur la ligne 20 de A à I :
Pour des colonnes impaires :
=SOMMEPROD((MOD(COLONNE(A20:I20);2)>0)*(A20:I20>0)*A20:I20)

Pour des colonnes impaires :
=SOMMEPROD((MOD(COLONNE(A20:I20);2)=0)*(A20:I20>0)*A20:I20)

Camille

"" wrote:

Je recherche, sur des cellules disjointes, à faire la somme uniquement
des cellules dont la valeur est >0

Je n'y arrive ni par SI ni par SOMME.SI

Merci de votre aide




Avatar
palmieri.jose
OK j'ai pigé le principe mais mes cellules sont qqfois en colonne pair
et qqfois en colonne impaire.

j'ai resolu le pb en mixant SOMME.SI et SI :
=SOMME(SI(E5>0;E5;0);SI(G5>0;G5;0);SI(HI5>0;H5;0);SI(K5>0;K5;0);SI(M5>0;M 5;0))
mais ceci ne marchera pas si on me demande ce calcul sur un grand
nombre de cellules car il risquerait d'y avoir trpo de conditions ou
d'arguments imbriqués

José
Avatar
garnote
Bonjour José,

Essaie cette fonction personnalisée :

Function svp(plage) As Double
Dim c As Range
Dim s As Double
For Each c In plage
If c > 0 Then s = s + c
Next c
svp = s
End Function

Un exemple d'utilisation :
=svp((B5;D2;J4;F7))

*** Mets ta plage discontinue entre parenthèses.

Serge

a écrit dans le message de news:
OK j'ai pigé le principe mais mes cellules sont qqfois en colonne pair
et qqfois en colonne impaire.

j'ai resolu le pb en mixant SOMME.SI et SI :
=SOMME(SI(E5>0;E5;0);SI(G5>0;G5;0);SI(HI5>0;H5;0);SI(K5>0;K5;0);SI(M5>0;M5;0))
mais ceci ne marchera pas si on me demande ce calcul sur un grand
nombre de cellules car il risquerait d'y avoir trpo de conditions ou
d'arguments imbriqués

José
Avatar
garnote
Et pour prévoir le cas (on ne sait jamais) où certaines cellules
contenant des valeurs non numériques sont sélectionnées :

Function svp(plage As Range) As Double
Dim c As Range
Dim s As Double
For Each c In plage
If IsNumeric(c) And c > 0 Then s = s + c
Next c
svp = s
End Function

Serge
Avatar
dre
Bonjour,

=SOMMEPROD((A1:A10>0);A1:A10)

dré




Je recherche, sur des cellules disjointes, à faire la somme uniquement
des cellules dont la valeur est >0

Je n'y arrive ni par SI ni par SOMME.SI

Merci de votre aide