Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

compter occurences mises en forme

3 réponses
Avatar
michelim
bjr,
je peux avec nb.si dénombrer dans une plage le nbre de cellules qu
contiennent la lettre "A".
qui peut me dire comment dénombrer dans cette même plage le nombre d
"A" qui ont une mise en forme particulière (en gras ou en italique o
bien qui se trouvent dnas une cellule jaune etc...

--
micheli
-----------------------------------------------------------------------
michelim's Profile: http://www.msusenet.com/member.php?userid=427
View this thread: http://www.msusenet.com/t-187099419

3 réponses

Avatar
AV
Comme c'est une question récurrente....
La bonne solution/question serait de formater les cellules en fonction de
critères en faisant appel à la mise en forme conditionnelle
A partir de là, les dénombrements sont aisés
Toute autre alternative relèvera du "barbouillage de cellule" et toute fonction
perso visant à sommer/dénombrer les dites cellules sera ... d'une infiablité
totale !

AV pour la MEFC
Avatar
lazade
Bonjour,

J'ai développé les fonctions personnalisées suivantes, qui permettent de
compte les cellules selon la couleur de texte ou la couleur de fond.

'--------------------------------------------
Public Function NbSiCouleurDeTexte(Plage As Range, IndexCouleur As Integer)
As Integer
'Renvoit le nombre de cellules de la plage Plage avec la couleur de
texte Couleur

'Application.Volatile True
Dim NbCellules As Integer
Dim Cell As Range

NbCellules = 0
For Each Cell In Plage
If Cell.Font.ColorIndex = IndexCouleur Then
NbCellules = NbCellules + 1
End If
Next

NbSiCouleurDeTexte = NbCellules

End Function
'--------------------------------------------

et

'--------------------------------------------
Public Function NbSiCouleurDeFond(Plage As Range, IndexCouleur As Integer)
As Integer
'Renvoit le nombre de cellules de la plage Plage avec la couleur de fond
Couleur

'Application.Volatile True
Dim NbCellules As Integer
Dim Cell As Range

NbCellules = 0
For Each Cell In Plage
If Cell.Interior.ColorIndex = IndexCouleur Then
NbCellules = NbCellules + 1
End If
Next

NbSiCouleurDeFond = NbCellules

End Function
'--------------------------------------------

Cordialement.




bjr,
je peux avec nb.si dénombrer dans une plage le nbre de cellules qui
contiennent la lettre "A".
qui peut me dire comment dénombrer dans cette même plage le nombre de
"A" qui ont une mise en forme particulière (en gras ou en italique ou
bien qui se trouvent dnas une cellule jaune etc...)


--
michelim
------------------------------------------------------------------------
michelim's Profile: http://www.msusenet.com/member.php?useridB70
View this thread: http://www.msusenet.com/t-1870994199




Avatar
AV
J'ai développé les fonctions personnalisées suivantes,


Hum, hum...
Qu'advient-il du résultat du calcul lorsque l'on change la couleur de police ou
le motif ?
Ben.. rien car une modification de format n'entraine aucun recalcul !

Par ailleurs, sur un plan plus général, les déclarations de variable de type
integer limitent le résultat à 32 767
AV