Bonjour,
J'ai une petite question de base.
Je boucle sur une feuille et je compare les valeurs dans une autre.
Quand je trouve des différences, je recopie les valeur et je voudrais les colorier pour que par la suite l'utilisateur décide des valeurs à conserver.
Le code fonctionne sauf en ce qui concerne la mise en couleur, en effet j'ai une erreur 1004 car je n’atteins pas les cellules.
Alors que si en je me mets en pas à pas et que j'active la feuille ça passe.
Je pourrais passer par un sheets.activate mais n'y a-t-il pas une syntaxe qui me permette directement de passer la commande ?
Ce que je ne comprends pas c'est que la séquence consistant à ajouter une ligne et à copier les valeurs d'une feuille vers l'autre passe.
J4ai essayé avec worksheets et sheets.
merci pour vos explications
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 For Each cell2 In Worksheets(WS_Call).Range("a" & NR_Ligne_Call & ":v" & NR_Ligne_Call) If cell2.Value <> Worksheets("donnees").Cells(NR_Ligne, cell2.Column).Value Then '.Copy .Range("a1").End(xlDown).Offset(1, 0) Worksheets("Donnees").Cells(NR_Ligne + 1, cell2.Column).EntireRow.Insert Shift:=xlDown With Worksheets("Donnees") Worksheets(WS_Call).Range("a" & NR_Ligne_Call & ":v" & NR_Ligne_Call).Copy .Range("a" & NR_Ligne + 1) End With ' c'est là que ça passe en erreur 1004 Sheets("Donnees").Range(Cells(NR_Ligne + 1, 1), Cells(NR_Ligne + 1, 22)).Interior.ColorIndex = 36 ' Sheets("Donnees").Range(Cells(NR_Ligne, 23), Cells(NR_Ligne + 1, 34)).FillDown 'End With MsgBox "Ligne : " & NR_Ligne_Call Exit For 'Else: MsgBox "OK" & NR_Ligne_Call End If
Partager