Macro avec MFC
Bonjour,
je me tourne encore vers vous.
J'ai fait une macro avec une mise en forme conditionnelle que je veux appliquer sur plusieurs feuilles.
Lorsque je lance cette macro, la MFC se fait bien sur la premiere feuille, mais pas sur les autres.
Pouvez vous m'aider ?
Voici la macro :
Sub miseenforme()
' miseenforme Macro
' Macro enregistrée le 05/10/2010 par lgu463
Sheets("Données").Select
Range("B3:C15").Select
Selection.Copy
Sheets("Janvier").Select
Sheets(Array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", _
"Septembre", "Octobre", "Novembre", "Décembre")).Select
Sheets("Janvier").Activate
Range("AV2").Select
ActiveSheet.Paste
Columns("AW:AW").ColumnWidth = 20.43
Sheets(Array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Aout", _
"Septembre", "Octobre", "Novembre", "Décembre")).Select
Range("D2:AH200").Select
Application.CutCopyMode = False
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=OU(JOURSEM(D$2)=1;NB.SI($AW$3:$AW$14;D$2))"
Selection.FormatConditions(1).Font.ColorIndex = 48
Selection.FormatConditions(1).Borders(xlLeft).LineStyle = xlNone
Selection.FormatConditions(1).Borders(xlRight).LineStyle = xlNone
Selection.FormatConditions(1).Borders(xlTop).LineStyle = xlNone
Selection.FormatConditions(1).Borders(xlBottom).LineStyle = xlNone
Selection.FormatConditions(1).Interior.ColorIndex = 48
Range("AY1").Select
ActiveCell.FormulaR1C1 = "=R[3]C[-50]"
End Sub
D'avance merci
-- 07 Oct 2010, 15:47 --
Oups!!
Pas d'amateur pour une réponse ?
Bonjour,
Une petite modif qui a l'air de fonctionner (je ne suis pas trop fier de cette syntaxe Feuille.Range... un peu lourde mais bon le résultat est là c'est l'essentiel) :
For Each Feuille In Worksheets
Feuille.Range("D2:AH200").FormatConditions.Delete
Feuille.Range("d2:ah200").FormatConditions.Add Type:=xlExpression, Formula1:= _
"=OU(JOURSEM(D$2)=1;NB.SI($AW$3:$AW$14;D$2))"
Feuille.Range("d2:ah200").FormatConditions(1).Font.ColorIndex = 48
Feuille.Range("d2:ah200").FormatConditions(1).Borders(xlLeft).LineStyle = xlNone
Feuille.Range("d2:ah200").FormatConditions(1).Borders(xlRight).LineStyle = xlNone
Feuille.Range("d2:ah200").FormatConditions(1).Borders(xlTop).LineStyle = xlNone
Feuille.Range("d2:ah200").FormatConditions(1).Borders(xlBottom).LineStyle = xlNone
Feuille.Range("d2:ah200").FormatConditions(1).Interior.ColorIndex = 48
Next
A+
Malheureusement cette solution me renvoie une erreur.