Addition suivant couleur de police

Fermé
micky - 23 avril 2010 à 09:29
m@rina Messages postés 20148 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 4 mai 2024 - 23 avril 2010 à 17:06
Bonjour,
je voudrai addition le nombre de cellules de couleurs de polices différentes
exemple : j'ai plusieurs cellules écrites en vert, ou bleu, ou rouge,
je voudrai savoir combien de cellules sont vertes, bleues ou rouges
merci pour votre aide
Michèle

5 réponses

UsulArrakis Messages postés 7405 Date d'inscription vendredi 28 mars 2003 Statut Contributeur Dernière intervention 27 janvier 2022 3 183
23 avril 2010 à 09:56
salut
dans quel logiciel ? et quelle version ?
0
c'est dans excel office 2003
0
UsulArrakis Messages postés 7405 Date d'inscription vendredi 28 mars 2003 Statut Contributeur Dernière intervention 27 janvier 2022 3 183
23 avril 2010 à 10:46
c'est possible avec une macro il me semble mais ça dépasse mes compétences
attend qu'un spécialiste passe par là ou va sur le forum https://www.excel-downloads.com/
il y a plein d'accros des macros ;-)
0
Ok
Merci tout de même d'avoir essayé
à +
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
m@rina Messages postés 20148 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 4 mai 2024 11 279
23 avril 2010 à 14:11
Bonjour,

Y en a aussi qui savent ici !!! :D

Il faut écrire une fonction et l'utiliser ensuite comme une fonction ordinaire avec les arguments indiqués dans la fonction.

Voici une function que j'ai écrite il y a quelque temps, qui est plus compliquée car elle permet de compter les cellules en couleur, les cellules tramées selon le type de trame, et selon le type de couleur de la trame.

Bien entendu c'est à compléter selon tes propres couleurs. Tu peux supprimer tout ce qui concerne la trame si cela ne t'intéresse pas :

Function nbtrame(plage As Range, couleur As Variant, trame As Variant, tramecol As Variant) As Double
Application.Volatile True

Dim cellule As Range, nb As Long

Application.Volatile True
nb = 0
For Each cellule In plage
    If couleur = "rouge" Then couleur = 3
    If couleur = "vert" Then couleur = 4
    If couleur = "orange" Then couleur = 46
    If couleur = "gris" Then couleur = 15
    If couleur = 0 Then couleur = -4105
    If trame = "d" Then trame = -4162
    If trame = "u" Then trame = -4121
    If trame = 0 Then trame = 1
    If tramecol = 0 Then tramecol = -4105
    If tramecol = "rouge" Then tramecol = 9
    If tramecol = "vert" Then tramecol = 4
    If tramecol = "orange" Then tramecol = 46
    If tramecol = "gris" Then tramecol = 15

If cellule.Interior.Pattern = trame Then

    If cellule.Interior.PatternColorIndex = tramecol Then
        If cellule.Interior.ColorIndex = couleur Then
    nb = nb + 1

End If
End If
End If
Next cellule
nbtrame = nb
End Function
--

Une fois que tu as écrit cette fonction, tu peux l'insérer via le bouton Fonction, Fonctions personnalisées. Il te restera à remplir la plage pour le premier argument, la couleur pour le second, la trame pour le troisième et la couleur de la trame pour le dernier. Pour compter sans trame et/ou sans couleur de trame, on met 0. Par exemple pour compter les cellules rouges dans la plage A1:A10, ça fait :

=nbtrame(A1:A10;"rouge";0;0)


A titre indicatif, pour la trame, "d" et "u" signifie down et up pour le sens de la trame.

m@rina
- "Sur le forum bureautique, on pose des questions concernant la bureautique..."
- "Ah bon ???"
0
UsulArrakis Messages postés 7405 Date d'inscription vendredi 28 mars 2003 Statut Contributeur Dernière intervention 27 janvier 2022 3 183
23 avril 2010 à 14:22
coucou m@rina
j'savais pas que tu macrotais sous excel ;-)

merci pour cette macro, je prends aussi
0
merci beaucoup
c'est super !
0
m@rina Messages postés 20148 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 4 mai 2024 11 279
23 avril 2010 à 17:06
Hello Usul d'Arrakis !
Ben oui, je macrote d'ailleurs surtout sur Excel... comme mon site ne l'indique pas !! :D

micky : une précision => Pour ce type de fonction personnalisée, il te faudra mettre à jour avec F9 en cas de modifs pour être sûr du résultat.
0