j'y suis parvenu, voici le code
Sub recup()
Set f = ThisWorkbook.Sheets("Feuil1")
'parcourir la colonne 4 (à partir de la ligne 7, jusqu'à la dernière cellule non-vide de cette même colonne)
For lig = 7 To f.Cells(Rows.Count, 4).End(xlUp).Row
'ouvrir chaque fichier dont le chemin d'accès et le nom sont renseignés en colonne D
Workbooks.Open Filename:=f.Cells(lig, 4)
'recopier en colonne F et G de ton fichier (celui contenant la macro), le contenu des cellules A16 et A19, d'une feuille nommée "MAQUETTE DEVIS" dans le ficher qui vient d'être ouvert
ThisWorkbook.Sheets(1).Cells(lig, 9) = ActiveWorkbook.Sheets("MAQUETTE DEVIS").[A16]
ThisWorkbook.Sheets(1).Cells(lig, 10) = ActiveWorkbook.Sheets("MAQUETTE DEVIS").[A19]
ThisWorkbook.Sheets(1).Cells(lig, 11) = ActiveWorkbook.Sheets("MAQUETTE DEVIS").[E23]
ThisWorkbook.Sheets(1).Cells(lig, 12) = ActiveWorkbook.Sheets("MAQUETTE DEVIS").[E24]
ThisWorkbook.Sheets(1).Cells(lig, 13) = ActiveWorkbook.Sheets("MAQUETTE DEVIS").[E25]
'refermer le fichier (celui dont le nom figure en colonne D)
ActiveWorkbook.Close savechanges:=False
Next lig
End Sub