Sub Creation_classeur_nommé_3()
Application.ScreenUpdating = False: Application.DisplayAlerts = False
DateDeSaisie = InputBox("Saisir la date de la garde que vous voulez préparer sous la forme jj/mm/aaaa")
On Error Resume Next
Const modele As String = _
"C:\Users\Thierry\Desktop\Versaillesbis\modèle_VRS.xls"
Liste = Array("", "Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre")
Workbooks.Open modele
With ActiveWorkbook
.Sheets("01").Range("AK1") = DateDeSaisie
sDossier1 = .Path & "\" & Year(DateDeSaisie)
If Dir(sDossier1, vbDirectory) = "" Then MkDir sDossier1
sDossier2 = sDossier1 & "\" & Liste(Month(DateDeSaisie)) & Year(DateDeSaisie)
If Dir(sDossier2, vbDirectory) = "" Then MkDir sDossier2
If Dir(sDossier2 & "\" & Format(DateDeSaisie, "dd_mmmm_yyyy") & ".xls") = "" Then
.SaveAs sDossier2 & "\" & Format(DateDeSaisie, "dd_mmmm_yyyy") & ".xls"
Else
rep = MsgBox("Le classeur " & Format(DateDeSaisie, "dd_mmmm_yyyy") & ".xls" & " existe déja" _
& vbLf & "Voulez vous le remplacer ?", _
vbYesNo + vbExclamation + vbDefaultButton1, "Avertissement")
If rep = vbNo Then
.Close False
Exit Sub
Else
.SaveAs sDossier2 & "\" & Format(DateDeSaisie, "dd_mmmm_yyyy") & ".xls"
End If
End If
.Close True
End With
Application.ScreenUpdating = True: Application.DisplayAlerts = True
End Sub