Sub Macro1()
Dim n As Byte 'déclare la variable n
Dim x As Byte 'déclare la variable x
Dim dest As Range 'déclare la variable dest (DESTination)
With Sheets("Fiche analyse multisites") 'prend en compte l'onglet "Fiche analyse multisites"
If .Range("E12") > 10 Then n = .Range("E12") - 10 'si E12 est supérieur à 10, définit la variable n
End With 'fin de la prise en compte de l'onglet 'Fiche analyse multisites"
With Sheets("SMP") 'prend en compte l'onglet "SMP"
.Select 'sélectionne l'onglet
For n = 1 To n 'boucle de 1 à n
.Range("B26:P27").Copy 'copie la plage B26:P27
Set dest = .Range("B" & .Range("H8").End(xlDown).Row + 1) 'definit dest, la dernière cellule du tableau
dest.Insert Shift:=xlDown 'insère la plage copiée dans la cellule dest
.Range("D" & .Range("H8").End(xlDown).Row - 1).Value = n + 10 'place le numéro du site
Next n 'prochain valeur de la boucle
End With 'fin de la prise en compte de l'onglet "SMP"
Application.CutCopyMode = False 'supprime le contour clignotant des cellules la plage copiée
End Sub