Bonjour,
Au moment de la copie, il n'est pas possible de modifier les valeurs des feuilles et afin de ne pas toucher aux feuilles originales (remplacer les formules par leur valeur), je te propose un petit code qui va remplacer toutes les formules des feuilles copiées par leur valeur :
Sub Test()
Dim Cl As Workbook
Dim Fe As Worksheet
Dim Plage As Range
ThisWorkbook.Worksheets(Array("Feuil1", "Feuil2")).Copy
Set Cl = ActiveWorkbook
For Each Fe In Cl.Worksheets
Set Plage = DefPlage(Fe)
If Not Plage Is Nothing Then Plage.Value = Plage.Value
Next Fe
End Sub
Function DefPlage(Fe As Worksheet, Optional L As Long = 1, Optional C As Long = 1) As Range
On Error GoTo Fin
With Fe
Set DefPlage = .Range(.Cells(L, C), _
.Cells(.Cells.Find("*", .[A1], -4123, , _
1, 2).Row, .Cells.Find("*", .[A1], -4123, , _
2, 2).Column))
End With
Exit Function
Fin:
Set DefPlage = Nothing
End Function