il y a 2 choses à verifier pour ces "???"
1. l'orthographe des 2 mots avec ??? dans les plages E18:E26 de Market_Live et A51:A59 de cours sont les mêmes ? N'y-a-t-il pas un éspace supplémentaire ou quelque chose autre ?
2. Les 2 valeurs dans F18:F26 de Market_Live, sont elles différents ? Un point ou une virgule ou un espace ???
3. si vous ne trouvez rien, bloquez le remplacement de la formules par des valeurs en ajoutant un charactère ' ou le mot REM en face de les lignes comme ceci et vous effacez aussi le double "--" en face de "VLOOKUP". Si vous appelez maintenant la macro "Copier" que se passe-t-il ? Sont les "???" disparu ?
If sh = "Cours" Then 'seulement pour Cours : plage F18:F26 de la feuille Market_Live
With .Range("A51:A59").Offset(, r - 1)
.FormulaR1C1 = "=IFERROR(--VLOOKUP(RC1,Market_live!r18c5:r26c6,2,0),""???"")" 'E18:G26 de Market_Live
' .Value = .Value 'remplacer par la valeur
' .Replace What:=" ", Replacement:="", LookAt:=xlPart
' .NumberFormat = "#,##0.00"
End With
End If