Bonjour le Forum
Afin de me simplifier la vie à gérer les "IF", j'ai transformé une petite macro de "if" avec des "case"
Hors depuis cette modification, quand la macro est terminée, toutes les lignes qui devraient recevoir un format spécial se retrouvent toutes avec les paramètres du Case V2 valeur 2. Il ignore royalement ou écrase les lignes mises à jour par le case V1.
Peut-on mettre un case dans un case (comme les if ?)
Sub Macro1()
'
' Macro1 Macro
' Macro inspirée XLD + perso
'
'
Dim i As Integer
Dim V1 As Integer
Dim V2 As Integer
For i = 10 To 7419 Step 1
V1 = Range("X" & i).Value
V2 = Range("X" & i).Value
Select Case V1
Case 2
Range("A" & i & ":W" & i).Font.Bold = True
Select Case V2
Case 1
With Range("A" & i)
.Font.Size = 14
.Interior.ColorIndex = 34
.Interior.Pattern = xlSolid
.Interior.PatternColorIndex = xlAutomatic
.Borders.LineStyle = xlcontinous
.Borders.Weight = xlThin
.Borders.ColorIndex = xlAutomatic
End With
Case 2
With Range("A" & i & ":W" & i)
.Font.Size = 12
.Interior.ColorIndex = 30
.Interior.Pattern = xlSolid
.Interior.PatternColorIndex = xlAutomatic
.Borders.LineStyle = xlcontinous
.Borders.Weight = xlThin
.Borders.ColorIndex = xlAutomatic
End With
End Select
End Select
Next i
End Sub
Merci pour vos commentaires et explications.
Zazou5908
Afin de me simplifier la vie à gérer les "IF", j'ai transformé une petite macro de "if" avec des "case"
Hors depuis cette modification, quand la macro est terminée, toutes les lignes qui devraient recevoir un format spécial se retrouvent toutes avec les paramètres du Case V2 valeur 2. Il ignore royalement ou écrase les lignes mises à jour par le case V1.
Peut-on mettre un case dans un case (comme les if ?)
Sub Macro1()
'
' Macro1 Macro
' Macro inspirée XLD + perso
'
'
Dim i As Integer
Dim V1 As Integer
Dim V2 As Integer
For i = 10 To 7419 Step 1
V1 = Range("X" & i).Value
V2 = Range("X" & i).Value
Select Case V1
Case 2
Range("A" & i & ":W" & i).Font.Bold = True
Select Case V2
Case 1
With Range("A" & i)
.Font.Size = 14
.Interior.ColorIndex = 34
.Interior.Pattern = xlSolid
.Interior.PatternColorIndex = xlAutomatic
.Borders.LineStyle = xlcontinous
.Borders.Weight = xlThin
.Borders.ColorIndex = xlAutomatic
End With
Case 2
With Range("A" & i & ":W" & i)
.Font.Size = 12
.Interior.ColorIndex = 30
.Interior.Pattern = xlSolid
.Interior.PatternColorIndex = xlAutomatic
.Borders.LineStyle = xlcontinous
.Borders.Weight = xlThin
.Borders.ColorIndex = xlAutomatic
End With
End Select
End Select
Next i
End Sub
Merci pour vos commentaires et explications.
Zazou5908