Private Sub Worksheet_Activate()
Dim pas As Byte, P As Range, i&, n&
Application.ScreenUpdating = False
Application.CopyObjectsWithCells = True 'au cas où, pour copier les objets
pas = 5 'adapter éventuellement
Set P = Sheets("Stock").[A4].CurrentRegion 'adapter éventuellement
DrawingObjects.Delete 'supprime les objets
[B2:G6] = "": Rows("7:" & Rows.Count).Delete 'RAZ
For i = 1 To P.Rows.Count - 2
Rows("2:6").Copy Rows("2:6").Offset(i * pas) 'copie les formats
Next
For i = 2 To P.Rows.Count
Cells(3 + n, 3) = P(i, 2)
Cells(3 + n, 5) = P(i, 3)
Cells(5 + n, 4) = P(i, 6)
P(i, 4).Copy
Cells(5 + n, 2).Select
Paste 'pour coller l'image
Cells(5 + n, 2).Borders.LineStyle = xlNone
Cells(5 + n, 2).Borders(xlEdgeLeft).Weight = xlThin
n = n + pas
Next
Columns("B:G").AutoFit 'ajustement largeur
Application.CutCopyMode = 0
Application.Goto [A1], True 'cadrage
End Sub