Bonjour à tous
Je viens de me remettre à la programmation, après 3 ans d'abstinence. J'ai essayé de faire quelques routines en vba pour excel. L'une d'elles me pose un problème et je vois pas ce qui ne va pas.
Mon but est de faire changer la couleur des cellules de la colonne A en fonction des valeurs de la colonne B. Voici mon code :
La routine s'arrête sur la ligne set Etat = Workbooks..., je compte 20 cellules vides parce que toutes les lignes ne sont pas remplies.
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
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 Sub CouleurInterval() Dim Etat As Range ' Etat est la cellule active Dim c As Integer ' c est le nombre de cellule vide Dim x As Integer ' x est le numero de la ligne ' affectation des variables x = 2 c = 0 Set Etat = Workbooks("Macrotest.xls").Worksheets("Feuil1").Range(Cells(x, 4)) Etat.Select ' Effectuer la routine tant que le nombre de cellules vides < 20 For c = 0 To 20 Select Case Etat Case "T" Etat.Offset(0, -1).Interior.Color = vbGreen Case "EA" Etat.Offset(0, -1).Interior.Color = vbMagenta Case "EC" Etat.Offset(0, -1).Interior.Color = vbCyan Case "" c = c + 1 End Select x = x + 1 Next End Sub
J'ai essayé en enlevant set, mais c'est pareil.
Un petit coup de main serait bienvenue, merci
Partager