Bonjour,
i va de 1 à 31, et tu essaies d'appliquer la couleur à partir d'une zone de 4 cellules de hauteur, en prenant i pour indiquer quelle ligne il faut prendre.
Proposition de code :
Sub ColorClasses()
Dim dct, shp$, i%, clr As Variant, val%, ind%
dct = [PlageDepartements].Value
With Worksheets("Grand-Est")
For i = 1 To UBound(dct)
shp = dct(i, 1)
val = [PlageDepartements].Cells(i, 1).Offset(0, 5).Value * 100
Select Case val
Case Is < 1
ind = 1
Case Is < 5
ind = 2
Case Is < 15
ind = 3
Case Is >= 15
ind = 4
End Select
clr = [LegendeA].Cells(ind, 1).Interior.Color
With .Shapes(shp).Fill
.Solid
.ForeColor.RGB = clr
End With
Next i
End With
End Sub
Et vu le positionnement de Strasbourg et la zone de couleur foncée après le lancement de la macro, pas sûr qu'il n'y ait pas d'erreur au niveau de la correspondance des formes, à vérifier.