Yedekleme

Katılım
27 Mart 2021
Mesajlar
77
Excel Vers. ve Dili
ofis 2010
Merhaba
Her gün birkaç kez açıp kayıt yaptığım excel uygulamamı, her kapattığımda D sürücüsünde "YEDEKLER" adlı klasör içerisine, aynı günün tarihi adıyla yeni bir klasör açmasını ve bu klasör içerisine exceli her kapattığımdaki tarih ve saat adıyla yedeklemesini (önceki yedeklenenler silinmeden), farklı güne geçince yine o günün tarihi adıyla klasör açıp dosyaları oraya yedeklemesini yapmak istiyorum.
Eğer mümkün ise 3 günden eski yedeklenen dosyayı silerse daha bi güzel olur.
İlginiz için şimdiden teşekkür ederim.
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,318
Excel Vers. ve Dili
2007 Türkçe
Merhaba,
ThisWorkbook kod bölümüne kopyalayıp deneyiniz.
Kod:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim kls As Object
Dim yol As String, sil As String

Set kls = CreateObject("Scripting.FileSystemObject")

yol = "D:\YEDEKLER\" & Format(Date, "YYYYMMDD")
If kls.FolderExists(yol) = False Then MkDir (yol)
ThisWorkbook.SaveCopyAs yol & "\" & Format(Now, "hhnnss") & ".xlsm"

sil = "D:\YEDEKLER\" & Format(Date - 4, "YYYYMMDD")
If kls.FolderExists(sil) = True Then kls.DeleteFolder sil
End Sub
 
Katılım
27 Mart 2021
Mesajlar
77
Excel Vers. ve Dili
ofis 2010
Ömer bey çok teşekkür ederim.
Denedim istediğim gibi çalışıyor.
Elinize, emeğinize sağlık.
 
Katılım
26 Ocak 2019
Mesajlar
70
Excel Vers. ve Dili
excel 2016
Merhaba,
ThisWorkbook kod bölümüne kopyalayıp deneyiniz.
Kod:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim kls As Object
Dim yol As String, sil As String

Set kls = CreateObject("Scripting.FileSystemObject")

yol = "D:\YEDEKLER\" & Format(Date, "YYYYMMDD")
If kls.FolderExists(yol) = False Then MkDir (yol)
ThisWorkbook.SaveCopyAs yol & "\" & Format(Now, "hhnnss") & ".xlsm"

sil = "D:\YEDEKLER\" & Format(Date - 4, "YYYYMMDD")
If kls.FolderExists(sil) = True Then kls.DeleteFolder sil
End Sub
Hocam aynı işlemi rar layarak yapabiliyormuyuz
 
Üst