Bonjour
En préambule, pour l'exemple,il est important que les fichiers soient dans le même répertoire.
Tu peux faire avec un Code dans ThisWorkBook qui s'activera à l'ouverture du fichier:
Private Sub Workbook_Open()
Dim i As Byte
Application.ScreenUpdating = False
For i = 1 To Worksheets.Count
Worksheets(i).Activate
Range("G3").FormulaR1C1 = _
"=""=""&""'[2017.xlsx]""&MID(CELL(""nomfichier"",R[-2]C[-6]),SEARCH(""]"",CELL(""nomfichier"",R[-2]C[-6]))+1,31)&""'!$G$7"""
[G3] = Range("G3").Value
Next i
End Sub
ou un Code quasi identique dans un module
Sub MAJ()
Dim i As Byte
Application.ScreenUpdating = False
For i = 1 To Worksheets.Count
Worksheets(i).Activate
Range("G3").FormulaR1C1 = _
"=""=""&""'[2017.xlsx]""&MID(CELL(""nomfichier"",R[-2]C[-6]),SEARCH(""]"",CELL(""nomfichier"",R[-2]C[-6]))+1,31)&""'!$G$7"""
[G3] = Range("G3").Value
Next i
End Sub
Les deux sont dans le fichier pour tester.
Cordialement