Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

MFC en VBA

2 réponses
Avatar
elli6258
Bonjour à tous,
Je souhaite modifié la macro ci-dessous pour quels ne s'execute que si le
nom du champ est différent de "OG".
Cela fonctionne.
Cela se corse car lorsque je pose la formule par macro
"=ET(D4>=$C4;D4<=$K4)", elle ne prend pas le n° ligne pour laquelle la
condition est vrai.

1) Peut on inserer dans la formule la variable "lig" à la place du N° de
ligne ?
pour avoir si condition fausse ligne 6 => "=ET(D6>=$C6;D6<=$K6)",
Merci d'anvance
Michel

'pose le motif des jours travaillé
lig = 1
For lig = 5 To lignevid
If Left(Cells(lig, 1), 2) <> "OG" Then
Range("D" & lig & ":J" & lig).Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=ET(D4>=$C4;D4<=$K4)"
Selection.FormatConditions(1).Interior.ColorIndex = 50

'pose le motif des jours feriés
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=EQUIV(D4;fériés;0)"
Selection.FormatConditions(2).Interior.ColorIndex = 45
End If
Next

2 réponses

Avatar
MichDenis
La formule comme ceci :
Remplace :
"=ET(D4>=$C4;D4<=$K4)"
Par
"=ET(D" & Lig & ">=$C" & Lig & ";D" & Lig & "<=$K" & Lig & ")"




"elli6258" a écrit dans le message de groupe de discussion :

Bonjour à tous,
Je souhaite modifié la macro ci-dessous pour quels ne s'execute que si le
nom du champ est différent de "OG".
Cela fonctionne.
Cela se corse car lorsque je pose la formule par macro
"=ET(D4>=$C4;D4<=$K4)", elle ne prend pas le n° ligne pour laquelle la
condition est vrai.

1) Peut on inserer dans la formule la variable "lig" à la place du N° de
ligne ?
pour avoir si condition fausse ligne 6 => "=ET(D6>=$C6;D6<=$K6)",
Merci d'anvance
Michel

'pose le motif des jours travaillé
lig = 1
For lig = 5 To lignevid
If Left(Cells(lig, 1), 2) <> "OG" Then
Range("D" & lig & ":J" & lig).Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=ET(D4>=$C4;D4<=$K4)"
Selection.FormatConditions(1).Interior.ColorIndex = 50

'pose le motif des jours feriés
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=EQUIV(D4;fériés;0)"
Selection.FormatConditions(2).Interior.ColorIndex = 45
End If
Next
Avatar
elli6258
Merci pour le coup de pouce.
Bon Wk
Michel

"MichDenis" a écrit dans le message de news:

La formule comme ceci :
Remplace :
"=ET(D4>=$C4;D4<=$K4)"
Par
"=ET(D" & Lig & ">=$C" & Lig & ";D" & Lig & "<=$K" & Lig & ")"




"elli6258" a écrit dans le message de groupe de
discussion :

Bonjour à tous,
Je souhaite modifié la macro ci-dessous pour quels ne s'execute que si le
nom du champ est différent de "OG".
Cela fonctionne.
Cela se corse car lorsque je pose la formule par macro
"=ET(D4>=$C4;D4<=$K4)", elle ne prend pas le n° ligne pour laquelle la
condition est vrai.

1) Peut on inserer dans la formule la variable "lig" à la place du N° de
ligne ?
pour avoir si condition fausse ligne 6 => "=ET(D6>=$C6;D6<=$K6)",
Merci d'anvance
Michel

'pose le motif des jours travaillé
lig = 1
For lig = 5 To lignevid
If Left(Cells(lig, 1), 2) <> "OG" Then
Range("D" & lig & ":J" & lig).Select
Selection.FormatConditions.Delete
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=ET(D4>=$C4;D4<=$K4)"
Selection.FormatConditions(1).Interior.ColorIndex = 50

'pose le motif des jours feriés
Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=EQUIV(D4;fériés;0)"
Selection.FormatConditions(2).Interior.ColorIndex = 45
End If
Next