Sub Bouton1_Cliquer()
Dim tb As Variant 'déclare le tableau de variables tb (TaBleau)
Dim dl As Long 'déclare la variable dl (Dernière Ligne)
Dim li As Long 'déclare la variable li (LIgne)
Dim col As Byte 'déclare la variable col (COLonne)
Dim pl As Range 'décalre la variable pl
tb = Array("F10", "H10", "D10", "P10", "B10", "O10", "C10")
With Sheets("Feuil2") 'prend en compte l'onglet "Feuil2"
dl = .Cells(Application.Rows.Count, 3).End(xlUp).Row 'définit la dernière ligne éditée dl de la colonne 3 (=C)
For li = 3 To dl 'boucle 1 : des lignes 3 à dl
col = 3 'initialise la colonne col
For i = 0 To 5 'boucle 2 : sur les 6 cellules de l'onglet "Feuil1"
'atribue à la cellule la valeur de la cellule en ligne li, colonne col de l'onglet "Feuil2"
Sheets("Feuil1").Range(tb(i)).Value = .Cells(li, col)
col = col + 1 'incrémente col
Next i 'prochaine cellule de la boucle 2
'ici tu lanceras la macro de travail (Macro2, 3 lignes en dessous)
'et supprimeras la ligne en dessous du MsgBox qui est juste là pour l'exemple
MsgBox "macro de travail"
' Module1.Macro2 'lance la procédure "Macro2" du module "Module1"
Set pl = Range("F10")
For i = 1 To 5 'boucle 2 : sur les 6 cellules de l'onglet "Feuil1"
Set pl = Application.Union(pl, Sheets("Feuil1").Range(tb(i)))
Next i 'prochaine cellule de la boucle 2
pl.ClearContents 'efface le contenu des cellules
Next li 'prochaine ligne de la boucle 1
End With 'fin de la prise en compte de l'onglet "Feuil2"
End Sub