Bonjour à ous,
je souhaite répéter une macro excel sur plusieurs colonnes. Cette macro me permet de récupérer une image en fonction d'une référence et de centrer l'image sur une cellule.
La macro est la suivante (celle-ci fonctionne):
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B1")) Is Nothing Then
répertoire = ThisWorkbook.Path
On Error Resume Next
ActiveSheet.Shapes("monimageB").Delete
Set img = ActiveSheet.Pictures.Insert(répertoire & "\Images plans Sandvik\" & Range("B1") & ".PNG")
img.Name = "monimageB"
img.Left = [B3].Left + ([B3].Width / 2) - (img.Width / 2)
img.Top = [B3].Top + ([B3].Height / 2) - (img.Height / 2)
End If
End Sub
J'ai testé la solution suivante pour balayer les colonnes mais celle-ci ne fonctionne pas:
Private Sub Worksheet_Change(ByVal Target As Range)
For c = 2 To 100
If Not Intersect(Target, Range("Cells(1, c")) Is Nothing Then
répertoire = ThisWorkbook.Path
On Error Resume Next
ActiveSheet.Shapes("monimage c").Delete
Set img = ActiveSheet.Pictures.Insert(répertoire & "\Images plans Sandvik\ " & Range(Cells(1, c)) & ".PNG")
img.Name = "monimage c"
img.Left = Cells(3, c).Left
img.Top = Cells(3, c).Top
End If
Next
End Sub
Auriez-vous une solution pour m'éviter de copier/modifier ce code pour X colonnes?
D'avance merci.
Cordialement,
Mike07