> Tous les forums > Forum Bureautique
 calculer en fonction ce la couleur des cellulesSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
jmsch
  Posté le 18/04/2016 @ 22:12 
Aller en bas de la page 
Petit astucien

Bonjour,

je voudrais additionner les cellules qui ont la même couleur de fond.
Pour faire j'ai trouvé ce code qui additionne bien les valeurs si la couleur est appliqué directement dans la cellule.

Chez moi la couleur dépend d'une mise en forme conditionnel et là le code ne fonctionne plus.
Quelqu'un aurait il une idée?

Merci

Function SommeCouleurFondRef(champ As Range, couleurFond As Range)

'*********************************************************

' Effectuer la somme des cellules en couleur *

' =SommeCouleurFondRef(Plage des cellules comportant les nombres;Cellule comportant le fond de couleur à prendre en compte)

' =SommeCouleurFondRef(A1:C30;D1)

'*********************************************************

Application.Volatile

Dim c, temp

temp = 0

For Each c In champ

If c.Interior.ColorIndex = couleurFond.Interior.ColorIndex Then

If IsNumeric(c.Value) Then temp = temp + c.Value

End If

Next c

SommeCouleurFondRef = temp

End Function

Publicité
ferrand
 Posté le 19/04/2016 à 02:06 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonsoir,

C'est une question récurrente. Pour ce qui relève de formats conditionnels les formats appliqués n'affectent pas directement les objets, on ne peut donc se référer aux propriétés de ces objets (pour bâtir une fonction personnalisée).

Mais sont liés à des conditions, connues, auxquelles on peut se référer. Ce qui est infiniment plus aisé, rapide et efficace que de vouloir aller tester quel format conditionnel se trouve appliqué.

Par ailleurs, il n'était pas utile de nous fournir un enième exemplaire de fonction de calcul basée sur des couleurs, il en traîne des quantités, et on en produit toujours à la demande pour des besoins très personnalisés... Cependant, je me permets de te signaler que la substitution de Color à ColorIndex est préférable depuis Excel 2007, les nouvelles versions n'utilisant plus la palette de couleurs à laquelle se réfère ColorIndex (même si celle-ci demeure pour des raisons de compatibilité).

Cordialement.

Debrief
 Posté le 20/04/2016 à 05:00 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonjour,

Si tu as une mise en forme conditionnelle pour colorer des cellules, ne peux-tu pas utiliser les mêmes conditions pour en faire la somme, quitte à faire une fonction dédiée ? Peux-tu indiquer quelles sont ces conditions ?

@ferrand, la fonction qu'il utilise pour tester les couleurs est fournie simplement pour compléter la description de sa question, je ne vois pas l'opportunité de ta remarque peu amène sur sa supposée inutilité.

Cordialement,
D.

ferrand
 Posté le 21/04/2016 à 09:14 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour Debrief,

Dans la mesure où ton premier paragraphe ne fait que reprendre ce que j'avais déjà exprimé, je suppose que ton message s'adresse principalement à moi !

Ma remarque est tout à fait neutre... et je m'en serais d'ailleurs dispensé si je n'avais pas jugé utile de souligner qu'en reprenant ce type de fonctions personnalisées établies depuis fort longtemps, il pouvait être judicieux de substituer la propriété Color à ColorIndex dans la mesure où les versions d'Office depuis 2007 n'utilisent plus par défaut la palette de 56 couleurs à laquelle réfère ColorIndex...

Ceci étant, ce type de sujets intervient plusieurs fois par an et les nouveautés pourraient porter sur des variantes liées à des utilisations particulières des couleurs nécessitant d'autres façons de personnaliser... Au demeurant, la fonction générique opérant par comparaison avec la couleur d'une cellule étalon n'était en rien une illustration du problème de jmsch.

Pour l'illustrer, il aurait mis à disposition un classeur permettant de trouver une solution à partir de ses MFC... En outre, ce problème ne lui était pas inconnu, il sait fort bien qu'une couleur résultant de mise en forme conditionnelle n'est pas la couleur de la cellule, pour avoir déjà posé des sujets connexes.

Indiquer qu'un élément n'a pas de rapport avec le problème posé est une information, utile, à laquelle il serait vicieux de vouloir conférer un caractère insultant !

Bonne journée.

Debrief
 Posté le 21/04/2016 à 11:21 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Hello Ferrand,

J'ai seulement repassé un couche sur tes "conditions auxquelles on peut se référer" et "Color à ColorIndex" est une information utile que j'exploiterai peut-être un jour.

Le reste n'a guère d'importance, d'autant que le posteur jmsch n'a même pas donné suite :)

Cordialement,
D.

ferrand
 Posté le 21/04/2016 à 14:00 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Re,

De toute façon il connaissait déjà la réponse...

Le problème est que l'on peut déterminer si un format conditionnel est appliqué, mais à ce stade on sait seulement qu'il s'appliquera si la condition est satisfaite !

Il faudrait donc récupérer la formule, en extraire les conditions, puis tester pour savoir si les conditions sont vraies ! Je n'ai pas essayé, mais sachant que l'on dispose préalablement des conditions pour pouvoir les tester directement, ce serait un chemin vraiment détourné.

Cordialement.

jmsch
 Posté le 21/04/2016 à 21:02 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonsoir,

me revoilà.... eh oui Monsieur j'étais absent quelques jours ce qui explique mon mutisme.... je ne lance pas une question juste comme ça et ne donne plus signe de vie!!! Lol

Pour ce qui est d'avoir fournir un enième exemplaire de fonction de calcul, eh oui c'était juste pour qu'on sache exactement de quoi on va parler, surtout si un novice comme moi passe par là.
Je ne vois pas en quoi ça peu déranger.
Quand moi je cherches dans les forums la réponse à une interrogation si le sujet ne comporte pas un exemple j'ai tendance à quitter et aller voir ailleurs.

Eh non je ne connaissais pas la réponse si non je n'aurais pas posé la question.
Maintenant je vois que c'est bien plus compliqué à mettre en place que je le pensais je vais vois pour faire autrement.

Merci pour le temps que vous avez passez sur le sujet.

ferrand
 Posté le 22/04/2016 à 02:19 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonsoir,

...de rien pour le temps, si on l'a passé, c'est qu'on l'a bien voulu.

On aurait même pu résoudre le problème, avec les éléments de la question propres à permettre de le résoudre.

Ceux-ci manquent, et une fonction qui n'a rien à voir avec les formats conditionnels, elle est naturellement hors course dans la recherche d'une solution. Elle ne concerne évidemment pas la question posée, donc inutile même si elle ne peut nous induire dans une fausse voie. Quant à ceux qui pourraient être intéressés par la trouver, outre que ce sujet est fréquemment posé et qu'il en circule de nombreuses versions, ils n'auraient aucun mal à trouver une telle fonction, et le plus souvent écrite un peu plus proprement. Mais ils ont tout intérêt, plutôt que risquer de prendre au hasard une fonction dont il n'est pas certain qu'elle réponde à leur problématique particulière, à poser la question sur un forum pour en obtenir une version bien adaptée à ce qu'ils recherchent.

Quant au problème de détection de couleur issue de format conditionnel, fais le tour de tes sujets antérieurs, cela te rafraîchira peut-être la mémoire.

Cordialement.

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Les bons plans du moment PC Astuces

Tous les Bons Plans
9,99 €Bloc multiprise parasurtenseur BRENNENSTUHL 8 prises à 9,99 €
Valable jusqu'au 27 Février

Amazon fait une promotion sur le bloc multiprise parasurtenseur BRENNENSTUHL avec 8 prises à orientation interversée qui passe à 9,99 € au lieu de 20 €. Le câble fait 1,4 m.


> Voir l'offre
13,88 €Carte mémoire microSDXC UHS-I U3 SanDisk Extreme 64 Go (jusqu'à 160 Mo/s) à 13,88 €
Valable jusqu'au 05 Mars

Amazon fait une promotion sur la carte mémoire microSDXC UHS-I U3 SanDisk Extreme 64 Go qui passe à 13,88 €. Cette carte mémoire offre des vitesses jusqu'à 160 Mo/s et est idéale pour les téléphones, caméras et appareils photo HD. Elle est compatible GoPro, Switch et est accompagnée d'un adaptateur SD.


> Voir l'offre
79,99 €Kit 5.1 Logitech Z607 bluetooth à 79,99 €
Valable jusqu'au 01 Mars

Amazon fait une promotion sur le kit d'enceintes 5.1 Logitech Z607 qui passe à 79,99 € livré gratuitement alors qu'on le trouve ailleurs autour de 125 €. Ce kit dispose d'un caisson de basses, d'une voie centrale et de 4 satellites offrant au total  une puissance de crête de 160 Watts et 80 Watts en puissance RMS. De quoi profiter pleinement de vos films et de vos jeux dans une pièce moyenne. D'autant que des câbles extra-longs (6,2 m) sont fournis pour les satellites arrières. Grâce à ses entrées 3.5mm et RCA, vous pourrez relier le kit à un PC, à une console de jeux, un lecteur DVD/Blu-Ray tandis que sa connexion bluetooth vous permettra de l'utiliser pour vos appareils sans fil. Vous pouvez même lui brancher directement une carte mémoire ou une clé USB et écouter la radio FM. Une télécommande (sans fil) vous permettra de contrôler tout cela. Une excellente affaire !


> Voir l'offre

Sujets relatifs
Calculer date en fonction d'une valeur dans une plage de cellules
Somme plage de cellules en fonction couleur fond
compter lignes d'un tableau dont toutes les cellules sont en couleur
VBA Excel valeur en fonction de cellules
(Macro Excel) Sélectionner cellule en fonction de sa couleur
copier la couleur des cellules
couleur cellules suivant valeur
Couleur des cellules sélectionnées
Excel2007 mise couleur de cellules sous conditions
copier la couleur des cellules pas le contenu
Plus de sujets relatifs à calculer en fonction ce la couleur des cellules
 > Tous les forums > Forum Bureautique