Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Vba excel lire les conditions d'une mise en forme dans une cellules

  • Initiateur de la discussion Initiateur de la discussion zephir94
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

zephir94

XLDnaute Impliqué
Bonsoir à tous,

J'ai une question concernant les MFC.

créer des MFC dans une cellule j'y suis arrivé :

Code:
Range("O" & df).Select
 With ThisWorkbook.Worksheets(1).Range("O" & df)
.FormatConditions.Delete
.FormatConditions.Add Type:=xlExpression, _
Formula1:="=ET(N" & df & "<=" & s & ")"
.FormatConditions(1).Interior.ColorIndex = 3
End With
  With ThisWorkbook.Worksheets(1).Range("O" & df)
.FormatConditions.Add Type:=xlExpression, _
 Formula1:="=ET(N" & df & " >= " & d & ";N" & df & "<" & X & ")"
.FormatConditions(2).Interior.ColorIndex = 46
End With
  With ThisWorkbook.Worksheets(1).Range("O" & df)
.FormatConditions.Add Type:=xlExpression, _
 Formula1:="=ET(N" & df & " >= " & X & ")"
.FormatConditions(3).Interior.ColorIndex = 4
End With
With ThisWorkbook.Worksheets(1).Range("O" & df)
.FormatConditions.Add Type:=xlExpression, _
Formula1:="=ET(N" & df & "=" & e & ")"
.FormatConditions(4).Interior.ColorIndex = 1
End With

Mais peut on en Vba récupérer la valeur numérique pour laquelle une MFC est vraie dans une cellule ?
par exemple si :

si<5 alors cellule en rouge, je voudrais récupérer 5.
J'ai essayé comme ceci :

Code:
Cells(df, 15).Select
Set fgg = Cells.FormatConditions(1).AppliesTo.Cells(df, 15)
Formula = Application.ConvertFormula(Formula, xlA1, xlR1C1, , firstCell)
Formula = Application.ConvertFormula(Formula, xlR1C1, xlA1, , cellRange)

Mais ça ne fonctionne pas !

Merci par avance pour vos aides
 
Dernière édition:
Re : Vba excel lire les conditions d'une mise en forme dans une cellules

Bonsoir, zephir94.

L'aide sur la propriété Formula1 de l'objet FormatCondition (F1 dans l'éditeur VBA) nous dit : Si ça peut vous aider ...
 
Re : Vba excel lire les conditions d'une mise en forme dans une cellules

Merci Victore21,

J'ai bien lu avec F1 cette aide avant de poser ma question ! mais ça n'a pas répondu à cette dernière, je cherche à retrouver pour quelle valeur une MFC est vrai.

L'enregistreur de macro m'a donné ceci :

Code:
 Selection.FormatConditions(1).StopIfTrue = True
    Range("O12").Select
    Range("O11").Activate
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=ET(N11 >= 10)"
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .ColorIndex = 4
        .TintAndShade = 0
    End With

ce que je recherche est :
"=ET(N11 >= 10)" soit 10

donc je me suis dis pourquoi ne pas récupérer la formule dans ce range !

Code:
y=Range("N11" ).FormulaR1C1Local

mais plouf ! pas de formule
 
Dernière édition:
Re : Vba excel lire les conditions d'une mise en forme dans une cellules

Bonjour zephir94, Patrick,

La MFC est créée sur la cellule O11, donc pour récupérer sa formule :

Code:
y = Range("O11").FormatConditions(1).Formula1
MsgBox y 'pour tester
A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 colorer une plage
Réponses
2
Affichages
844
Réponses
10
Affichages
811
Réponses
1
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…