Fonction en relation de la couleur du texte

Bonjour,

Comment puis-je obtenir le calcul d'un nombre de cellule (en créant une macro) utilisant la même couleur de texte (couleur automatique issue d'un formatage conditionnelle).

J'utilise cette macro ci qui fonctionne, toutefois en couleur automatique elle ne fonctionne pas, ce qui est normal.

Donc comment l'appliquer au couleur automatique et formatage conditionnelle ?

macro utilisée:

REM ***** BASIC *****
Option VBASupport 1

Public Function CountColour(pRange1 As Range, pRange2 As Range) As Double
'Update by Extendoffice
Application.Volatile
Dim rng As Range
For Each rng In pRange1
If rng.Font.Color = pRange2.Font.Color Then
CountColour = CountColour + 1
End If
Next
End Function

Merci pour vos solutions .

Bonjour,

Avez-vous testé l'instruction Range.displayformat.interior.color qui vous permet d'avoir la couleur de mise en forme conditionnelle de chaque cellule ?
Ou peut être avec l'instruction --> Range.FormatConditions.Count

Avec une de ces propriétés vous pouvez, je pense, compter le nombre de cellules dans une plage dont la couleur est différente des cellules en couleur blanche.

A voir si cela fonctionne avec votre libreoffice

Je n'ai pas testé

Cordialement

Salut,

J’ai eu le même souci que toi, la macro marche pas avec les couleurs venant du formatage conditionnel. Perso j’ai contourné le truc en passant par DisplayFormat.Font.Color, comme a dit Dan, mais uniquement sous Excel (et pas LibreOffice).

Genre tu peux adapter ta macro comme ça :

Public Function CountCondColour(pRange1 As Range, pRange2 As Range) As Double
Dim rng As Range
For Each rng In pRange1
    If rng.DisplayFormat.Font.Color = pRange2.DisplayFormat.Font.Color Then
        CountCondColour = CountCondColour + 1
    End If
Next
End Function

Par contre, ça marche que si le format conditionnel est bien appliqué et visible. Et comme toujours, faut activer les macros 😉

Bon courage !

Rechercher des sujets similaires à "fonction relation couleur texte"