Au cas où ton fichier source change de nom (et d'emplacement), tu peux utiliser cette version. C'est la macro qui ouvrira et fermera le fichier source.
Option Explicit
Sub ImportData()
Dim i As Long, dl As Long
Dim wd As Worksheet, ws As Worksheet ' destination, source
Dim sws As String, NomFichier As Variant
Dim jusque As Long, depuis As Long
Set wd = ThisWorkbook.Sheets(1)
dl = wd.Range("A" & Rows.Count).End(xlUp).Row
NomFichier = Application.GetOpenFilename("Classeurs Excel(*.xlsx),*.xlsx)")
If NomFichier = False Then Exit Sub
Workbooks.Open Filename:=NomFichier
NomFichier = Dir(NomFichier)
Set ws = Workbooks(NomFichier).Sheets(1)
sws = "[" & NomFichier & "]Feuil1"
depuis = ws.Range("K:K").Find("*").Row
jusque = ws.Range("K" & Rows.Count).End(xlUp).Row
wd.Activate
For i = 2 To dl
If Cells(i, 1) <> "" Then
Cells(i, 2).FormulaR1C1 = _
"=SUMPRODUCT((" & sws & "!R" & depuis + 1 & "C2:R" & jusque & "C2=RC[3])*(" & sws & "!R" & depuis + 1 & "C3:R" & jusque & "C3=RC[-1])*(" & sws & "!R" & depuis + 1 & "C7:R" & jusque & "C7=RC[1])*(ROW(" & sws & "!R" & depuis + 1 & "C1:R" & jusque & "C1)-ROW(" & sws & "!R" & depuis & "C1)))"
If Cells(i, 2) = 0 Then
Cells(i, 2) = "?"
Else
Cells(i, 2).FormulaR1C1 = _
"=INDEX(" & sws & "!R" & depuis + 1 & "C" & jusque & ":R" & jusque & "C" & jusque & ",SUMPRODUCT((" & sws & "!R" & depuis + 1 & "C2:R" & jusque & "C2=RC[3])*(" & sws & "!R" & depuis + 1 & "C3:R" & jusque & "C3=RC[-1])*(" & sws & "!R" & depuis + 1 & "C7:R" & jusque & "C7=RC[1])*(ROW(" & sws & "!R" & depuis + 1 & "C1:R" & jusque & "C1)-ROW(" & sws & "!R" & depuis & "C1))))"
End If
Cells(i, 2).Formula = Cells(i, 2).Value
End If
Next i
Workbooks(NomFichier).Close
End Sub