> Tous les forums > Forum Bureautique
 Excel : somme si couleur = noir
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
pitchaf_75
  Posté le 04/05/2006 @ 09:27 
Aller en bas de la page 
Nouvel astucien
Salut à tous, [hello] Dans une feuille Excel 2003, certaines cellules contiennent des chiffres. Je souhaite faire la somme de ces chiffres uniquement si la couleur de la cellule est noire. Est-il possible de le faire autrement qu'avec du VB ? L'idéal serait une formule de type : somme d'une plage si couleur de la cellule = noir. Au cas où on ne peut faire autrement qu'en VB, comment faire pour déclencher le calcul ?
Publicité
galopin01
 Posté le 04/05/2006 à 10:22 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour et bienvenue sur PCA,
La réponse est différente selon qu'il s'agit de compter des couleurs mises par l'utilisateur ou s'il s'agit de couleur issues d'une Mise en Forme Conditionnelle (MFC).
Les couleurs issue de MFC ne peuvent être comptées sur leur couleur, mais uniquement sur la condition de mise en forme.
Dans beaucoup de cas, celà passe par une macro, cependant pour les conditions simples on arrive parfois à s'en tirer avec quelque chose comme ça :
=NB.SI(plage,Condition de la MFC)
si plage est A1 et condition est >10 celà donnera :
= NB.SI(A1;">10")

Voici une macro qui compte les couleurs mises par l'utilisateur

Function NBCOLOR(Cible As Range, oRef As Range) As Long
Dim o, i%, k%
Application.Volatile
k = oRef.Interior.ColorIndex
For Each o In Cible
If o.Interior.ColorIndex = k Then i = i + 1
Next
NBCOLOR = i
End Function

Une fois installée dans un module supplémentaire (Module1) cette macro s'utilise comme une fonction standart d'Excel (rubrique : Fonctions personnalisées)
Pour installer cette macro faire :
Outils/Macro/Nouvelle macro.../Ok (mémoriser le nom proposé)
Outils/Macro/Arrêter l'enregistrement
Outils/Macro/Macros.../Modifier (la macro mémorisée)
Remplacer tout le texte de la macro enregistrée par le code qui précéde.
Revenir dans Excel par Alt + Q
Pour compter les couleurs (identiques à B1) de la zone A1:A10 il faut mettre cette formule
=NBCOLOR(A1:A10;B1)


Au lieu de passer par une cellule échantillon de couleur, il est également possible de passer directement le code de couleur en paramètre (encore faut-il les connaître par coeur).
Dans ce cas utiliser la macro suivante :


Function NBC(Cible As Range, k As Integer) As Long
Dim o, i%
Application.Volatile
For Each o In Cible
If o.Interior.ColorIndex = k Then i = i + 1
Next
NBC = i
End Function

Pour la même plage et la couleur noire, la formule sera alors :
=NBC(A1:D$10;1)
Pour la couleur rouge :
=NBC(A1:D$10;3)

A noter que les deux fonctions ne réagissent pas directement aux changements de couleur (car les changements de couleurs ne provoquent pas de recalcul)
Dans ca cas, il faut forcer le recalcul par F9 ou par quelque autre moyen...

Pour le calcul sur MFC reformuler la question SVP
A+



Modifié par galopin01 le 11/03/2007 18:28
Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
52,99 €Nintendo Ring Fit Adventure pour Switch à 52,99 €
Valable jusqu'au 27 Mai

Amazon fait une promotion sur le Nintendo Ring Fit Adventure pour Switch à 52,99 € au lieu de 79 €. Faites du sport tout en vous amusant avec Ring Fit Adventure ! Munis des accessoires présents dans la boite du jeu partez à l’aventure et réalisez des mouvements de sports pour avancer dans les niveaux. Poussez sur le Ring-Con et vous enverrez un choc sur vos ennemis ! A la fin de chaque exercice, mesurez même votre rythme cardiaque et découvrez le nombre de calories dépensées.


> Voir l'offre
14,20 €Jeu de société Monopoly à 14,20 €
Valable jusqu'au 29 Mai

Amazon fait une promotion sur le jeu de société Monopoly qui passe à 14,20 € au lieu de 24,99 €. Voici un classique des soirées de jeux en famille ! Au Monopoly, les joueurs doivent acheter, vendre et planifier pour s'enrichir. Attention à la faillite, à vous de bien choisir les rues pour ruiner vos adversaires et être le dernier sur le plateau de jeu !


> Voir l'offre
54,99 €Manette de jeu sans-fil Sony DualSense pour PS5 à 54,99 €
Valable jusqu'au 28 Mai

Amazon fait une promotion sur la manette de jeu sans-fil Sony DualSense pour PS5 qui passe à 54,99 € au lieu de 69,99 €. Compatible PC via une connexion filaire en USB.


> Voir l'offre

Sujets relatifs
listing et somme valeurs unique dans colonne excel
Macro couleur séries graphique excel 2010
somme excel 2007 ne fonctionne pas
Avec Excel = Somme jour+Heures+minutes
Excel : Faire une somme si condition.
excel (somme si)
Somme Couleur Fond
(Macro Excel) Sélectionner cellule en fonction de sa couleur
Excel 2007 ligne en couleur à chaque changement d'abréviation
changer fichier couleur en noir et blanc
Plus de sujets relatifs à Excel : somme si couleur = noir
 > Tous les forums > Forum Bureautique