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
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é
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
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é
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é
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
<palmieri.jose@gmail.com> a écrit dans le message de news: 1182342364.732702.213500@u2g2000hsc.googlegroups.com...
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
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é
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
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
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
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
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