Public Sub SaveAs()
Dim Path As String
Dim Ext As String
Dim Filename As String
With ThisWorkbook
Path = .Path & "\"
Ext = Mid(ThisWorkbook.Name, InStrRev(ThisWorkbook.Name, ".")) ' Type Excel du classeur
Filename = Path & "Annuaire" & "_" & [L3] & "_" & [L6].Text
If MsgBox("Ce classeur va être sauvegardé puis copié dans " & vbLf & vbLf & Filename, _
vbCritical + vbOKCancel) = vbOK Then
.Save ' sauvegarde du classeur avant de faire des copies conformes
.SaveCopyAs Filename & Ext ' copie du même type que le classeur
CopyAs Filename:=Filename, FileFormat:=xlWorkbookNormal ' copie du classeur en Xls sans macro
End If
End With
End Sub
Sub CopyAs(Filename, FileFormat)
Application.DisplayAlerts = False ' Ne pas avoir les demandes de confirmation
Application.ScreenUpdating = False ' Ne pas afficher le nouveau classeur
ThisWorkbook.Sheets.Copy ' copie en tant que nouveau classeur
With ActiveWorkbook
.SaveAs Filename:=Filename, FileFormat:=FileFormat
.Close
End With
End Sub