Problème somme avec conditions

  • Initiateur de la discussion Initiateur de la discussion Ascali
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Ascali

XLDnaute Nouveau
Bonjour,

Je n'ai pas trouvé de réponse pour mon problème, j'ai joint un petit fichier d'essai.
Le problème est expliqué dans les commentaires des cellules.

Merci d'avance
Ascali
 

Pièces jointes

Re : Problème somme avec conditions

Bonjour

Le premier cas est relativement simple:
Code:
=SOMMEPROD((MOD(LIGNE(C4:C19);2)=0)*C4:C19)
1/ regarde le numéro de la ligne
2/ regarde son reste dans une division par 2 (par exemple ligne 7, divise 7 par 2 = 3 x 2 + 1 donc le reste est égal à 1)
3/ additionne tous les cas ou le reste est égal à 0.

Pour adapter à un cas une ligne sur trois (c4,c7,...) il faudra utiliser MOD(LIGNE(C4:C19);3)=1)

Pour ta deuxième question, je ne vois comment faire sans paramétrer de fonction personnelle (donc macro...) est-ce envisageable?
 
Re : Problème somme avec conditions

Bonjour à tous,

2)
Ta MFC c'est ">0", en fait tu veux la somme des lignes impaires (autant demander ça directement...).
Et comme tu n'as pas de nombres négatifs :
=SOMMEPROD((MOD(LIGNE(C4:C19);2)=1)*(C4:F19))
suffira.

eric
 
Re : Problème somme avec conditions

Bonjour a tous

ma contribution par fonction personnalisée

pour les installer

copier le code
ouvrir le classeur
alt+F11 pour VBA
insertion / Module
coller
ferme.
clique sur la cellule prévu
insérer fonction/ personnalisée / et choisir l'une des deux

somme_Couleur
Plage ==> sélection à la souris de la zone à traiter
Couleur ==> sélectionnée une case avec la couleur MFC
OK

Somme_Ecart
Plage ==> sélection à la souris de la zone à traiter
Écart ==> taper un chiffre
OK
en quittant excel l'enregistré avec l'extention .xlsm
Code:
Function Somme_Couleur(Plage As Range, Etalon As Range)
    Dim Couleur%, Cellule As Range
    Couleur = Etalon.FormatConditions(1).Interior.ColorIndex
    Somme_Couleur = 0
    For Each Cellule In Plage
        If Cellule.FormatConditions.Count > 0 Then
            If (Cellule.FormatConditions(1).Interior.ColorIndex = Couleur) And IsNumeric(Cellule.Value) Then Somme_Couleur = Somme_Couleur + Cellule.Value
        End If
    Next Cellule
End Function
Function Somme_Ecart(Plage As Range, Ecart%)
    Dim Cellule As Range, Compteur#
        Compteur = Ecart
    For Each Cellule In Plage
        If Compteur = Ecart Then
            Somme_Ecart = Somme_Ecart + Cellule.Value
            Compteur = 0
        End If
        Compteur = Compteur + 1
    Next Cellule
End Function
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
13
Affichages
332
Réponses
15
Affichages
569
Réponses
37
Affichages
1 K
Retour