Filtrer par couleur issue d’une MFC

Résolu
touroul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   -  
JvDo Messages postés 1978 Date d'inscription   Statut Membre Dernière intervention   -
Bonsoir le forum,

Dans mon fichier Excel, j’obtiens un fond jaune dans certaines cellules (sur plusieurs colonnes) à l’aide d’une vingtaine de formules dans le module de Mise en Forme Conditionnelle.

Ensuite, j’utilise la macro suivante pour filtrer les lignes contenant des cellules jaunes, quelle que soit leur colonne :

Sub FiltreJaune()
Dim plage As Range, cel As Range, filtre As Range
Application.ScreenUpdating = False
Set plage = Range("MonTableau")
If plage Is Nothing Then Exit Sub 'sécurité
For Each cel In plage
If cel.Interior.Color = 6 Then _
Set filtre = Union(IIf(filtre Is Nothing, cel, filtre), cel)
Next
plage.EntireRow.Hidden = True
If Not filtre Is Nothing Then filtre.EntireRow.Hidden = False
End Sub


Elle fonctionne parfaitement si je colore les cellules en jaune « à la mano », mais pas si la couleur est issue d’une MFC.

Exemple : https://www.cjoint.com/c/IBquZkRldMj

Y a-t-il une solution pour effectuer correctement ce filtre ?
Par avance merci pour votre aide !


Configuration: Excel 2016

4 réponses

JvDo Messages postés 1978 Date d'inscription   Statut Membre Dernière intervention   859
 
Bonjour

Il existe une macro (je suppose qu’il y en a plusieurs mais je n’en connais qu’une) qui recherche les formules de la MFC puis fait un EVAL(formules) sur chaque cellule.
Cela permet d’identifier les cellules colorées par une MFC.
Je laisse à ceux qui se souviennent de l’url le soin de te la fournir ( peut-être chez MdF).

Cordialement
1
touroul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   16
 
Bonjour Jv
Intéressant ... qu'appelles-tu MdF ?
Je ne trouve rien sur le sujet ...
Merci par avance
0
JvDo Messages postés 1978 Date d'inscription   Statut Membre Dernière intervention   859
 
MyDearFriend
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Bonjour,

essaie en remplaçant :
cel.Interior.Color

par :
cel.DisplayFormat.Interior.Color

ne fonctionne que dans un Sub, pas dans Function. Ca tombe bien c'est ton cas.
eric

1
touroul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   16
 
Bonjour


Je n'ai pas trouvé de solution à ce problème qui semble connu.
Une mise à jour de Microsoft serait la bienvenue (Satya, si tu passes par là ... :) )

Par contre le Tri multicolonnes fonctionne sur les cellules colorées par une MFC, y compris lorsqu'il est lancé par une macro.
A défaut de filtre, il met les lignes contenant des cellules colorées en haut, ce qui n'est déjà pas si mal ...

Bonne journée
0
touroul Messages postés 509 Date d'inscription   Statut Membre Dernière intervention   16
 
Bonjour Eric

Grand miracle, ça fonctionne !!!
C'est parfaitement filtré.

Ça répond à une problématique maintes fois posée sur CCM, restée sans réponse.

Bravo et merci
0