Sub Bouton189_Cliquer()
Dim P As Range, decal&, o As OLEObject, c As Range
Application.CopyObjectsWithCells = True
With ActiveSheet
If .Name = "Definitions" Or .Name = "fx" Or .Name = "Needs" Then Exit Sub
Set P = .[D5:M9] 'plage à adapter
decal = 5 'décalage à adapter
Application.ScreenUpdating = False
.DrawingObjects.Placement = 2
P.Copy P.Offset(decal) 'copie les cellules et les contrôles de formulaire
For Each o In .OLEObjects 'boucle pour copier les contrôles ActiveX
Set c = o.TopLeftCell
If Not Intersect(P, c) Is Nothing Then
With o.Duplicate 'duplication
.Left = o.Left
.Top = c.Offset(decal).Top + o.Top - c.Top
End With
End If
Next
End With
End Sub