Bonsoir je reviens vers vous j'ai une macro qui me sert de sauvegarde de mon fichier mais chaque fois que je l'ouvre et le referme il me crée une copie existerait'il une modification pour que j'ai un nombre maxi de sauvegarde de cinq fichier
voila mes macro:
Sub Sauvegarde_Journaliere(Optional strBidon As String)
Dim Répertoire As String, NomFichier As String
'Répertoire = ActiveWorkbook.Path & "\BACKUP"
Répertoire = "J:\nom de mon fichier"
'Si le dossier BACKUP n'éxiste pas alors je le créer
If Dir(Répertoire, vbDirectory) = "" Then MkDir (Répertoire)
' Créer un nom de fichier unique par jour
NomFichier = ThisWorkbook.Name
NomFichier = Left(NomFichier, Len(NomFichier) - 5)
NomFichier = NomFichier & " -" & Format(Date, " dd.mm.yyyy") & ".xlsm"
'NomFichier = NomFichier & "-" & Format(Date, "yyyy.mm.dd") & ".xlsm"
' Vérifier si le fichier du jour n'existe pas
If Dir(Répertoire & "\" & NomFichier) = "" Then
'Sauvegarde une copie du fichier et ne touche donc pas au fichier en cours
ActiveWorkbook.SaveCopyAs Filename:=Répertoire & "\" & NomFichier
End If
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayFullScreen = False
Application.DisplayFormulaBar = True
Sauvegarde_Journaliere
If Not ThisWorkbook.Saved Then ThisWorkbook.Save
Répertoire = "i:\nom de mon fichier"
If Dir(Répertoire, vbDirectory) = "" Then MkDir Répertoire
On Error Resume Next
ThisWorkbook.SaveCopyAs Répertoire & "\" & Replace(ThisWorkbook.Name, ".xlsm", "") & Format(Date, " - dd.mm.yyyy") & ".xlsm"
End Sub
merci de votre aide
voila mes macro:
Sub Sauvegarde_Journaliere(Optional strBidon As String)
Dim Répertoire As String, NomFichier As String
'Répertoire = ActiveWorkbook.Path & "\BACKUP"
Répertoire = "J:\nom de mon fichier"
'Si le dossier BACKUP n'éxiste pas alors je le créer
If Dir(Répertoire, vbDirectory) = "" Then MkDir (Répertoire)
' Créer un nom de fichier unique par jour
NomFichier = ThisWorkbook.Name
NomFichier = Left(NomFichier, Len(NomFichier) - 5)
NomFichier = NomFichier & " -" & Format(Date, " dd.mm.yyyy") & ".xlsm"
'NomFichier = NomFichier & "-" & Format(Date, "yyyy.mm.dd") & ".xlsm"
' Vérifier si le fichier du jour n'existe pas
If Dir(Répertoire & "\" & NomFichier) = "" Then
'Sauvegarde une copie du fichier et ne touche donc pas au fichier en cours
ActiveWorkbook.SaveCopyAs Filename:=Répertoire & "\" & NomFichier
End If
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayFullScreen = False
Application.DisplayFormulaBar = True
Sauvegarde_Journaliere
If Not ThisWorkbook.Saved Then ThisWorkbook.Save
Répertoire = "i:\nom de mon fichier"
If Dir(Répertoire, vbDirectory) = "" Then MkDir Répertoire
On Error Resume Next
ThisWorkbook.SaveCopyAs Répertoire & "\" & Replace(ThisWorkbook.Name, ".xlsm", "") & Format(Date, " - dd.mm.yyyy") & ".xlsm"
End Sub
merci de votre aide