COmpter les cellules en fonction du format et du contenu
Résolu
olivivier59
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
olivivier59 Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
olivivier59 Messages postés 8 Date d'inscription Statut Membre Dernière intervention -
Bonsoir
Je voudrais compter les celules rouge ou bleues ou.... J'ai teste plusieurs script mais le résultats n'est pas à ce que je veux. Je suis amateur dans les macros excel.
Mon probléme : si une cellule sur une plage donnée (en ligne) avec un fond rouge ou bleu... et avec un contenu spécifque (T ou R) avec une couleur de fond définie je voudrais faire la somme de ces cellules.
Si la cellule est rouge avec "T" ou "R" quelle compte le nombre de cellule rouge.
Je ne sais pas si cela viens mon exel (2013 pro). La fonction de recacul ne fonctionne pas ni la touche F9
Ci dessous le script pour le couleurs (trouvé sur le net) mais il ne fonctionne pas chez moi. si je je mets aucun remplissage aucun calcul ne se fait.
Merci de votre aide
Function NbCellCouleur(Plage As Range, Couleur As Integer) As Long
Dim c As Range
NbCellCouleur = 0
For Each c In Plage
If c.Interior.ColorIndex = Couleur Then
NbCellCouleur = NbCellCouleur + 1
End If
Next c
End Function
Function CodeCouleur(CelluleCouleur As Range) As Long
'Retourne le code couleur de la CelluleCouleur
Application.Volatile
CodeCouleur = CelluleCouleur.Interior.ColorIndex
End Function
Je voudrais compter les celules rouge ou bleues ou.... J'ai teste plusieurs script mais le résultats n'est pas à ce que je veux. Je suis amateur dans les macros excel.
Mon probléme : si une cellule sur une plage donnée (en ligne) avec un fond rouge ou bleu... et avec un contenu spécifque (T ou R) avec une couleur de fond définie je voudrais faire la somme de ces cellules.
Si la cellule est rouge avec "T" ou "R" quelle compte le nombre de cellule rouge.
Je ne sais pas si cela viens mon exel (2013 pro). La fonction de recacul ne fonctionne pas ni la touche F9
Ci dessous le script pour le couleurs (trouvé sur le net) mais il ne fonctionne pas chez moi. si je je mets aucun remplissage aucun calcul ne se fait.
Merci de votre aide
Function NbCellCouleur(Plage As Range, Couleur As Integer) As Long
Dim c As Range
NbCellCouleur = 0
For Each c In Plage
If c.Interior.ColorIndex = Couleur Then
NbCellCouleur = NbCellCouleur + 1
End If
Next c
End Function
Function CodeCouleur(CelluleCouleur As Range) As Long
'Retourne le code couleur de la CelluleCouleur
Application.Volatile
CodeCouleur = CelluleCouleur.Interior.ColorIndex
End Function
A voir également:
- COmpter les cellules en fonction du format et du contenu
- Fonction si et - Guide
- Format epub - Guide
- Format factory - Télécharger - Conversion & Codecs
- Hp usb disk storage format tool - Télécharger - Stockage
- Format apfs - Guide
8 réponses
Bonjour,
Bienvenue sur le forum.
La fonction de recacul ne fonctionne pas ni la touche F9
Tu dois avoir un paramétrage bien malade dans ce cas...
Si la cellule est rouge avec "T" ou "R" quelle compte le nombre de cellule rouge.
Il serait peut-être judicieux d'utiliser une autre méthode pour faire un cumul car un tableur est surtout prévu pour cumuler des nombres.
il ne fonctionne pas chez moi
Il faut autoriser les macros pour avoir un résultat car la fonction est opérationnelle si elle est implantée correctement.
Bienvenue sur le forum.
La fonction de recacul ne fonctionne pas ni la touche F9
Tu dois avoir un paramétrage bien malade dans ce cas...
Si la cellule est rouge avec "T" ou "R" quelle compte le nombre de cellule rouge.
Il serait peut-être judicieux d'utiliser une autre méthode pour faire un cumul car un tableur est surtout prévu pour cumuler des nombres.
il ne fonctionne pas chez moi
Il faut autoriser les macros pour avoir un résultat car la fonction est opérationnelle si elle est implantée correctement.
Bonjour olivivier59,
Pour ta fonction NbCellCouleur(), si tu veux compter les cellules
qui n'ont pas de couleur de fond (= Aucun remplissage), tu dois
transmettre pour le 2ème paramètre Couleur : -4142 (xlNone).
Cordialement
Pour ta fonction NbCellCouleur(), si tu veux compter les cellules
qui n'ont pas de couleur de fond (= Aucun remplissage), tu dois
transmettre pour le 2ème paramètre Couleur : -4142 (xlNone).
Cordialement
Merci pour vos réponses rapides je teste et reviens vers vers vous dès les tests effectués
Énorme merci
Énorme merci
pour être complet : les macros sont activées. j'ai enregistré le fichier est redemmarrer excel. j'ai l'impression que la macro "fonctionne à l'envers" . si j'efface le contenu de la cellule ma macro fonctionne mais une fois. j'ai essayer de compléter avec un remplissage blanc au lieu de aucun remplissage mais sans résultat. je vais persévérer. merci à vous
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Comme tu n'as pas précisé, tu as vu que c'est pour compter des couleurs mises manuellement et non par MFC ?
eric
Comme tu n'as pas précisé, tu as vu que c'est pour compter des couleurs mises manuellement et non par MFC ?
eric
bonsoir à tous
Tout d'abord merci pour les précisions apportées.
J'ai résolu mon problème.
Je vous mets le code ci dessous pour aiser d'autre personne
Code pour trouver le code d'une couleur
Function Couleur(Cellule As Range)
Application.Volatile
Couleur = Cellule.Interior.ColorIndex
End Function
et ci dessous le code utiliser pour compter les cellule de couleurs différentes
Function NbCoul1(Zne As Range, Couleur As String)
Application.Volatile True
For Each cell In Zne
If cell.Interior.ColorIndex = 37 Then NbCoul1 = NbCoul1 + 1
If cell.Interior.ColorIndex = 6 Then NbCoul1 = NbCoul1 + 2
If cell.Interior.ColorIndex = 3 Then NbCoul1 = NbCoul1 + 3
If cell.Interior.ColorIndex = 14 Then NbCoul1 = NbCoul1 + 4
If cell.Interior.ColorIndex = 47 Then NbCoul1 = NbCoul1 + 5
Next
NbCoul1 = NbCoul1
End Function
il me fallait un facteur multiplicatif donc la raison des +1, +2 +3.......
Par contre je ne sais pas ou mettre résolu.
Tout d'abord merci pour les précisions apportées.
J'ai résolu mon problème.
Je vous mets le code ci dessous pour aiser d'autre personne
Code pour trouver le code d'une couleur
Function Couleur(Cellule As Range)
Application.Volatile
Couleur = Cellule.Interior.ColorIndex
End Function
et ci dessous le code utiliser pour compter les cellule de couleurs différentes
Function NbCoul1(Zne As Range, Couleur As String)
Application.Volatile True
For Each cell In Zne
If cell.Interior.ColorIndex = 37 Then NbCoul1 = NbCoul1 + 1
If cell.Interior.ColorIndex = 6 Then NbCoul1 = NbCoul1 + 2
If cell.Interior.ColorIndex = 3 Then NbCoul1 = NbCoul1 + 3
If cell.Interior.ColorIndex = 14 Then NbCoul1 = NbCoul1 + 4
If cell.Interior.ColorIndex = 47 Then NbCoul1 = NbCoul1 + 5
Next
NbCoul1 = NbCoul1
End Function
il me fallait un facteur multiplicatif donc la raison des +1, +2 +3.......
Par contre je ne sais pas ou mettre résolu.