XL 2010 erreur sur le range

lolo06340

XLDnaute Nouveau
Bonjour,

je travaille sur excel 2010 et j'ai fait beaucoup de vb.

Pour la première fois, je travaille sur la mise en forme conditionnelle avec vb.

ça a fonctionné mais maintenant il bloque sur le .formatcond... ou autre .interior.... que j'utilise avec mon with range...

'erreur d'exécution 1004'
erreur définie par lapplication ou l'objet

Je joins mon code car le fichier est trop gros:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim i As Integer
Dim DerCol As Integer
Dim val1 As Integer
Dim val2 As Integer
Dim colonne As String

Worksheets("Feuil1").Protect , UserInterFaceOnly:=True

DerCol = Range("G6:ZZ6").End(xlToRight).Column

For i = 2 To 5
'MsgBox "val 1 : " & Worksheets("Paramétrage").Cells(i, 2).Value & " val 2 " & Worksheets("Paramétrage").Cells(i + 1, 2).Value
val1 = Worksheets("Paramétrage").Cells(i, 2).Value + 1
val2 = Worksheets("Paramétrage").Cells(i + 1, 2).Value - 1
colonne = NomDeColonne(DerCol)

With Range("G" & val1 & ":" & colonne & val2) 'Sélection des plages où doit s'appliquer la MeF
'Supprime les MFC existantes
.FormatConditions.Delete


.Interior.Color = xlNone
'Ajoute une condition (Vrai lorsque la cellule est non vide)
.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, Formula1:=" "

With .FormatConditions(1)
'Définit la couleur de fond de la cellule lorsque la condition sera vraie.
Select Case i
Case 2
.Interior.Color = Cells(Worksheets("Paramétrage").Cells(i, 2), 2).Interior.Color
Case 3
.Interior.Color = Cells(Worksheets("Paramétrage").Cells(i, 2), 2).Interior.Color
Case 4
.Interior.Color = Cells(Worksheets("Paramétrage").Cells(i, 2), 2).Interior.Color
Case 5
.Interior.Color = Cells(Worksheets("Paramétrage").Cells(i, 2), 2).Interior.Color
End Select
' .Interior.ColorIndex = 15 'Gris

End With
End With
Next i
End Sub

Est-ce que quelqu'un pourrait m'aider, je suis dessus depuis 1 heure + forums...
 

Lone-wolf

XLDnaute Barbatruc
Bonjour lolo et bienvenue sur XLD :)

Je ne peux pas t'aider pour la FMC VBA. Mais pour une aide plus éfficace joint le fichier en question. Et on peux mettre une couleur avec la condition sans passer par .FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, Formula1:=" ".
 

lolo06340

XLDnaute Nouveau
Merci de prendre le temps de me répondre.

je créais un gantt et je souhaite avec vba mettre en place un code douleur par théme.
Chaque théme a un nombre de ligne variable et je laisse à l'utilisateur le soin de choisir la couleurs par théme.

Ca a fonctionné et là je ne vois pas où je me suis planté!!!
 

Pièces jointes

  • Gantt Trame vierge V10 sans mise en forme.xlsm
    232 KB · Affichages: 13

Discussions similaires

Réponses
0
Affichages
136

Statistiques des forums

Discussions
312 097
Messages
2 085 256
Membres
102 839
dernier inscrit
Tougtoug