Sub test()
Dim nomfich$, ext$, form
Application.ScreenUpdating = False
With ThisWorkbook.Sheets("Demande Achats")
.Copy
ActiveSheet.UsedRange = .UsedRange.Value
nomfich = "DA-" & .[C7] & Format(Date, " yyyy-mm-dd")
ext = Mid(.Parent.Name, InStrRev(.Parent.Name, "."))
form = .Parent.FileFormat
End With
'Application.DisplayAlerts = False 'facultatif, évite tout message
On Error Resume Next
Workbooks(nomfich & ext).Close 'si le fichier est ouvert
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & nomfich, form
ActiveWorkbook.Close False
End Sub