Fonction personnalisée (compter cellule avec police)
Résoluyg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je souhaite compter les cellules qui ont une police rouge dans un tableau.
Petite difficulté il se peut que certains texte de cellule contiennent à la fin des charactères d'une autre couleur dont je ne veux pas tenir compte.
J'ai donc construit la fonction avec cette méthode :
Public Function CompterParCouleurFond(Plage As Range, Couleur As Range) Application.Volatile For Each Cellule In Plage If Cellule.Characters(2, 1).Font.Color = Couleur.Font.Color Then CompterParCouleurFond = CompterParCouleurFond + 1 End If Next End Function
Je rencontre 2 anomalies pour que cette fonction soit fiable :
Je devrais y arriver par moi même mais elle me compte aussi les cellules vides qui ont la couleur de police recherché.
Mais surtout ce que je ne maitrise pas du tout c'est que si je mets à jour le contenu du tableau la fonction ne fait pas le recalcule automatiquement elle reste sur la donnée précédente.
Merci pour votre aide
Windows / Edge 114.0.1823.51
- Fonction personnalisée (compter cellule avec police)
- Fonction si et - Guide
- Sonnerie personnalisée android - Guide
- Excel compter cellule couleur sans vba - Guide
- Changer police facebook - Guide
- Police aptos - Accueil - Bureautique
4 réponses
J'ai finalement trouvé ceci pour le problème d'actualisation de la formule :
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Application.Calculate End Sub
Et c'est finalement le code pour ne pas tenir compte des cellules vides qui me pose problème finalement :
Bon a priori je me suis auto résolu mon problème donc voilà mon code final si besoin :
Public Function CompterParCouleurFond(Plage As Range, Couleur As Range) Application.Volatile For Each Cellule In Plage If Cellule.Value = "" Then GoTo Fin If Cellule.Characters(2, 1).Font.Color = Couleur.Font.Color Then CompterParCouleurFond = CompterParCouleurFond + 1 End If Fin: Next End Function
bonjour,
en testant, je n'obtiens pas ton deuxième souci: la valeur se met bien à jour.
peux-tu partager ton fichier?