Bonjour a tous,
Je viens chercher de l'aide sur le forum pour quelque chose d'un peu particulier.
Avec 2 boucles For j'ai automatisé la création de rectangles (msorectangles) transparents juste en dessous de chaque rectangle colorées. Mon problème est le suivant: un decallage se crée tout au début (le rectangle n'est pas bien en dessous de la cellule colorée) et ce decallage s'empire au fur et a mesure de la boucle. Je ne comprends pas l'origine du problème. Les références seraient différentes entre Cellules et Formes?
Voici le code:
Sub Solution()
Dim RGBC As Long
Dim Blue As Integer
Dim Green As Integer
Dim Red As Integer
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim W As Single
i = 0
j = 0
k = 0
With Worksheets(1)
For i = 1 To 30
For j = 1 To 100
If .Cells(i, j).Interior.ColorIndex < 0 Then
Else: .Cells(i, j).Activate
RGBC = ActiveCell.Interior.Color
Red = Int(RGBC Mod 256)
Green = Int((RGBC Mod 65536) / 256)
Blue = Int(RGBC / 65536)
With ActiveSheet.Shapes.AddShape(msoShapeRectangle, 2 + 0.17 * j + ActiveCell.Left, ActiveCell.Offset(1, 0).Top, ActiveCell.Width, ActiveCell.Height)
With .Fill
.ForeColor.RGB = RGB(Red, Green, Blue)
.Transparency = 0.5
End With
With .Line
.DashStyle = msoLineSingle
.ForeColor.RGB = RGB(Red, Green, Blue)
.Weight = xlHairline
End With
End With
k = 0
End If
Next j
Next i
End With
End Sub
ET le fichier en PJ.
Merci d'avance!