Bonjour Charly,
d'après le code VBA de ta copie d'écran :
1) tu as fais comme avec la 1ère méthode où la vérif du fichier n'est pas faite par la sub CpyLig2()
j'espère que tu n'as pas oublié de mettre dans ThisWorkbook le code de la sub Workbook_Open(), qui vérifie la présence du 2ème fichier, et s'il n'est pas présent, l'ouvre (le charge en mémoire vive) ; si tu ne l'as pas fait, alors c'est évidemment la toute 1ère raison pour laquelle ça ne peut pas marcher.
rappel du code de ThisWorkbook :
Option Explicit
Private Sub Workbook_Open()
Dim wd As Workbook: On Error GoTo OpenWd
If Dir(ThisWorkbook.Path & "\" & wb2) = "" Then
MsgBox wb2 & " n'existe pas.", 48, "Erreur": Exit Sub
End If
Set wd = Workbooks(wb2): Exit Sub 'échec si non ouvert
OpenWd:
Workbooks.Open wb2: ThisWorkbook.Activate 'open & wb1
End Sub
2) ton message d'erreur est "L'identificateur sous le curseur n'est pas reconnu"
or ta ligne de code VBA en jaune est : With Workbooks(wb2).Worksheets("NEW_TS_2018")
l'identificateur non reconnu est donc soit le classeur wb2, soit la feuille "NEW_TS_2018" (peut-être même les deux)
tu as : Public Const wb2$ = "INDICATEURS AQP TS 2018.xlsx" ; vérifie si c'est le nom exact de ton classeur
(et ça s'rait pas un .xlsm ou un .xls des fois ? )
enfin, vérifie le nom exact de ta feuille de calcul : "NEW_TS_2018" ; c'est p't'être "NEW TS 2018" ?
( si oui, c'est pas pareil, hein ?)
3) vérifie que ton ordinateur est bien un PC et pas un Commodore 64 ou un Amstrad CPC 464
(non, ça, c'est une blague ! )
dhany