SOMME SI COULEUR

Résolu/Fermé
Amesam
Messages postés
18
Date d'inscription
dimanche 2 décembre 2012
Statut
Membre
Dernière intervention
9 janvier 2018
- 4 janv. 2018 à 14:49
Amesam
Messages postés
18
Date d'inscription
dimanche 2 décembre 2012
Statut
Membre
Dernière intervention
9 janvier 2018
- 5 janv. 2018 à 10:58
Bonjour,

Je coince avec un classeur, un planning 2018.


J'utilise cette fonction :

Function SOMME_SI_COULEUR(PlageSomme As Range, PlageCouleur As Range) As Variant
'*********************************************************
' Effectuer la somme des cellules en couleur *
'*********************************************************
Dim Cel As Range
Dim Som As Double

If PlageCouleur.Cells.Count > 1 Then
SOMME_SI_COULEUR = CVErr(xlErrValue)
Exit Function
End If
For Each Cel In PlageSomme
If Cel.Interior.ColorIndex = PlageCouleur.Interior.ColorIndex Then Som = Som + Cel
Next
SOMME_SI_COULEUR = Som
End Function


depuis trois années j'utilise cette fonction et pas de souci, mais là je n'arrive pas à trouver pourquoi ça ne fonctionne pas.
J'ai enregistré mon fichier en .xlsm mais idem !

Si idée merci pour le retour.

8 réponses

Amesam
Messages postés
18
Date d'inscription
dimanche 2 décembre 2012
Statut
Membre
Dernière intervention
9 janvier 2018
3
Modifié le 4 janv. 2018 à 16:56
Bonjour mod100,

Oui les couleurs sont bien identiques. Par contre, je me rend compte qu'ici je devrais avoir 0 et non #NOM?

=SOMME_SI_COULEUR(B14:AF14; AH14)

AH14 étant ma référence en bleu (H+)

3
Pinzou76
Messages postés
609
Date d'inscription
dimanche 17 septembre 2017
Statut
Membre
Dernière intervention
25 février 2019
185
4 janv. 2018 à 17:12
Bonjour,
Lors d'une vérification il ne faut pas plutôt faire "IF(a==b)" au lieu de "IF(a=b)" ?
0
mdo100
Messages postés
126
Date d'inscription
jeudi 9 décembre 2010
Statut
Membre
Dernière intervention
21 février 2019
21
4 janv. 2018 à 18:52
Re Amesam,

Ta plage B14:AF14 ne serait-elle pas issue de MFC, car si c'est le cas, la fonction
=SOMME_SI_COULEUR(PlageSomme As Range, PlageCouleur As Range)
ne peut pas fonctionner.

Je pense que tu devrais joindre ton fichier afin de vérifier tout ça.

@+
0