Dénombrer les cellules colorées d'une plage

Le
Versatile
Bonjour,
Sauriez-vous s'il est possible de dénombrer les cellules colorées dans
leur arrière plan d'une plage en utilisant seulement les formules
d'Excel ?
Je sais que cela est possible avec macros, mais avec les seules
formules d'Excel 2000 à 2002 ?
Merci beaucoup !
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Patrick BASTARD
Le #21512792
Bonjour, "Versatile"
Si la coloration répond à une logique, ce serait bien le diable qu'on ne
trouve pas une solution.
Encore faut-il que nous connaissions cette logique...
Un fichier joint, ou un p'tit exemple ?


--
Bien ,

Patrick


Bonjour,
Sauriez-vous s'il est possible de dénombrer les cellules colorées dans
leur arrière plan d'une plage en utilisant seulement les formules
d'Excel ?
Je sais que cela est possible avec macros, mais avec les seules
formules d'Excel 2000 à 2002 ?
Merci beaucoup !
Versatile
Le #21512902
Si la coloration répond à une logique, ce serait bien le diable qu'on ne
trouve pas une solution.
Encore faut-il que nous connaissions cette logique...
Un fichier joint, ou un p'tit exemple ?



Eh bien voilà. J'ai une collègue qui a un fichier où en colonne A se
trouvent les jours du mois X, et en colonne B de tierces personnes
insèrent une couleur de fond pour le cas où une activité d'un certain
rype est prévue pour ce jour là. Exemple :
Colonne A Colonne B
Ligne 1 1er janv.
Ligne 2 2 janv. (cellule à colorer)
....
Ligne 20 Somme des cellules colorées =
Je souhaiterais additionner en bas de la colonne B toutes les cellules
qui comportent une couleur de fond au dessus-d'elle. Une espèce de
NB.cellule_colorée....
Patrick BASTARD
Le #21512962
Re, "Versatile"

La solution consiste à renseigner le "certain type" d'activité en colonne B
(par exemple à l'aide d'une liste de validation), et d'utiliser la mise en
forme conditionnelle pour colorier les cellules concernées.
Une simple formule nb.si permettra de dénombrer le nb de cellules
remplissant la condition choisie..

--
Bien ,

Patrick



Si la coloration répond à une logique, ce serait bien le diable qu'on ne
trouve pas une solution.
Encore faut-il que nous connaissions cette logique...
Un fichier joint, ou un p'tit exemple ?



Eh bien voilà. J'ai une collègue qui a un fichier où en colonne A se
trouvent les jours du mois X, et en colonne B de tierces personnes
insèrent une couleur de fond pour le cas où une activité d'un certain
rype est prévue pour ce jour là. Exemple :
Colonne A Colonne B
Ligne 1 1er janv.
Ligne 2 2 janv. (cellule à colorer)
....
Ligne 20 Somme des cellules colorées Je souhaiterais additionner en bas de la colonne B toutes les cellules
qui comportent une couleur de fond au dessus-d'elle. Une espèce de
NB.cellule_colorée....
michdenis
Le #21513102
Bonjour,

Copie cette fonction personnalisée dans un module standard
de ton classeur.
Dans la cellule de ta feuille de calcul où tu veux afficher le résultat,
tu saisis la formule suivante : = SumCouleur(A1:A10;A1)

A ) tout le contenu de la plage A1:A10 doit être numérique dans
un format de cellule "Standard" ou numérique. A1:A10 est la
plage à additionner.
B ) le paramètre A1 représente une cellule ayant la couleur de fond
dont tu veux additionner dans la plage A1:A10

ATTENTION : Si tu modifies manuellement la couleur de fond d'une
cellule, tu dois utiliser la touche F9 pour mettre ta formule à jour.

'----------------------------------
Function SumCouleur(SumPlage As Range, CouleurEtalon As Range)
Application.Volatile
Dim C As Range
For Each C In SumPlage
If C.Interior.Color = CouleurEtalon.Interior.Color Then
SumCouleur = SumCouleur + C.Value
End If
Next
End Function
'----------------------------------




"Versatile"
Bonjour,
Sauriez-vous s'il est possible de dénombrer les cellules colorées dans
leur arrière plan d'une plage en utilisant seulement les formules
d'Excel ?
Je sais que cela est possible avec macros, mais avec les seules
formules d'Excel 2000 à 2002 ?
Merci beaucoup !
Versatile
Le #21513172
Bonjour,

Copie cette fonction personnalis e dans un module standard
de ton classeur.
Dans la cellule de ta feuille de calcul o tu veux afficher le r sultat,
tu saisis la formule suivante : = SumCouleur(A1:A10;A1)

A ) tout le contenu de la plage A1:A10 doit tre num rique dans
un format de cellule "Standard" ou num rique. A1:A10 est la
plage additionner.
B ) le param tre A1 repr sente une cellule ayant la couleur de fond
dont tu veux additionner dans la plage A1:A10

ATTENTION : Si tu modifies manuellement la couleur de fond d'une
cellule, tu dois utiliser la touche F9 pour mettre ta formule jour.

'----------------------------------
Function SumCouleur(SumPlage As Range, CouleurEtalon As Range)
Application.Volatile
Dim C As Range
For Each C In SumPlage
    If C.Interior.Color = CouleurEtalon.Interior.Color Then
        SumCouleur = SumCouleur + C.Value
    End If
Next
End Function
'----------------------------------



Merci bien. J'aurais espéré que l'on puisse éviter les macros et se
satisfaire des formules. Bon bien tant pis.
Et merci pour la macro.
Patrick BASTARD
Le #21513282
Re,Versatile"

J'aurais espéré que l'on puisse éviter les macros et se satisfaire des
formules.



Le fait qu'on puisse utiliser les macros n'implique pas forcément qu'on ne
puisse pas s'en passer...

--
Bien ,

Patrick
patrick.bastardchezdbmail.com
michdenis
Le #21513402
Tu peux le faire sans VBA.

A ) D'abord, tu crées un nom (insertion / nom / définir)
Supposons "Denis"
Et tu lui affectes fait référence à : = Lire.Cellule(63;$A1)

B ) Supposons que tu veuilles additionner la plage A1:A10
Dans la colonne B1:B10, tu copies : = denis
la valeur retournée par la formule est la propriété "ColorIndex"
de la couleur de fond de la cellule

C ) Dans la cellule où tu veux dénombrer le nombre de cellules d'une
couleur particulière, tu inscris : = Nb.Si(A1:A10;6)
le chiffre 6 étant l'index de la couleur

D ) si tu préfères avoir la somme des cellules pour une couleur particulière :
=SOMME.SI(B1:B10;6;A1:A10)
Et tu peux masquer la colonne B:B




"Versatile"
Bonjour,

Copie cette fonction personnalis e dans un module standard
de ton classeur.
Dans la cellule de ta feuille de calcul o tu veux afficher le r sultat,
tu saisis la formule suivante : = SumCouleur(A1:A10;A1)

A ) tout le contenu de la plage A1:A10 doit tre num rique dans
un format de cellule "Standard" ou num rique. A1:A10 est la
plage additionner.
B ) le param tre A1 repr sente une cellule ayant la couleur de fond
dont tu veux additionner dans la plage A1:A10

ATTENTION : Si tu modifies manuellement la couleur de fond d'une
cellule, tu dois utiliser la touche F9 pour mettre ta formule jour.

'----------------------------------
Function SumCouleur(SumPlage As Range, CouleurEtalon As Range)
Application.Volatile
Dim C As Range
For Each C In SumPlage
If C.Interior.Color = CouleurEtalon.Interior.Color Then
SumCouleur = SumCouleur + C.Value
End If
Next
End Function
'----------------------------------



Merci bien. J'aurais espéré que l'on puisse éviter les macros et se
satisfaire des formules. Bon bien tant pis.
Et merci pour la macro.
Versatile
Le #21513452
On 7 avr, 16:31, "michdenis"
Tu peux le faire sans VBA.

A ) D'abord, tu crées un nom (insertion / nom / définir)
    Supposons "Denis"
    Et tu lui affectes fait référence à :  = Lire.Cellule(6 3;$A1)

B ) Supposons que tu veuilles additionner la plage A1:A10
    Dans la colonne B1:B10, tu copies :  = denis
    la valeur retournée par la formule est la propriété "ColorI ndex"
    de la couleur de fond de la cellule

C ) Dans la cellule où tu veux dénombrer le nombre de cellules d'une
    couleur particulière, tu inscris :  = Nb.Si(A1:A10;6)
    le chiffre 6 étant l'index de la couleur

D ) si tu préfères avoir la somme des cellules pour une couleur parti culière :
        =SOMME.SI(B1:B10;6;A1:A10)
    Et tu peux masquer la colonne B:B



C'est assez génial cette astuce ! Je ne connaissais absolument pas
cette fonction Lire.cellule !....
Merci !
michdenis
Le #21513562
| C'est assez génial cette astuce ! Je ne connaissais
| absolument pas cette fonction Lire.cellule !....

C'est une fonction appartient aux macro xl4 que l'on
peut encore utiliser avec Excel 2007 dans un "nom"
seulement pour l'interface de calcul ou en VBA.
Versatile
Le #21513672
C'est une fonction appartient aux macro xl4 que l'on
peut encore utiliser avec Excel 2007 dans un "nom"
seulement pour l'interface de calcul ou en VBA.



Et quel est son nom en vba ?
Syntaxe du genre suivant ?
x = xlm.read.cell(63,"A1")
Publicité
Poster une réponse
Anonyme