OVH Cloud OVH Cloud

Nombre de cellules avec une police bleue

2 réponses
Avatar
stephan
Bonjour à tous,

mon problème est de compter le nombre de cellules remplies de textes ecrits
avec une police bleue ou rouge ou noir.

Sur ce forum on m'a proposé d'utiliser la fonction suivante:
Function SommeCouleurTexte(champ As Range, couleurTexte)
Application.Volatile
Dim c, temp
temp = 0
For Each c In champ
If c.Font.ColorIndex = couleurTexte Then
temp = temp + c.Value
End If
Next c
SommeCouleurTexte = temp
End Function

Si j'ai bien compris j'ai été dans VBA (Alt+F11) et j'ai crée ce nouveau
module en copiant cette fonction.

Dans ma liste de cellules, j'ai des cellules rouges, bleues et noires.
Or j'obtiens les valeurs suivantes:
=sommecouleurtexte(A2:A2000;0) me donne 0
=sommecouleurtexte(A2:A2000;1) me donne 0
=sommecouleurtexte(A2:A2000;2) me donne 0
=sommecouleurtexte(A2:A2000;3) me donne #VALEUR! (je soupconne le rouge)
=sommecouleurtexte(A2:A2000;4) me donne 0
=sommecouleurtexte(A2:A2000;5) me donne #VALEUR! (je soupconne le bleu)

Je pense que j'approche du but mais je ne comprends pas pourquoi cela me
renvoit #VALEUR! au lieu de renvoyer la réponse.

Merci pour votre aide,
cordialement, stephan

2 réponses

Avatar
Francois
Bonjour à tous,

mon problème est de compter le nombre de cellules remplies de textes ecrits
avec une police bleue ou rouge ou noir.

Sur ce forum on m'a proposé d'utiliser la fonction suivante:
Function SommeCouleurTexte(champ As Range, couleurTexte)
Application.Volatile
Dim c, temp
temp = 0
For Each c In champ
If c.Font.ColorIndex = couleurTexte Then
temp = temp + c.Value
End If
Next c
SommeCouleurTexte = temp
End Function



Bonjour,

Remplacer
temp = temp + c.Value
par
temp = temp + 1

Attention, il faut activer le recalcul pour mettre à jour le résultat
après une modification des couleurs dans la plage sélectionnée.

--
François L

Avatar
JB
Bonjour,

http://cjoint.com/?djhIoXN8aF

http://www.excelabo.net/compteclic.php?nom=jb-fonctionsperso

JB