Soru Dosyamın yedeğini 3 gündür alamıyorum

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,569
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Değerli Dostlar,


4 gün öncesine değin, masaüstündeki "C:\Users\aaa\Desktop\2020_Harcamaları.xlsx" dosyamı, her hafta D:\YEDEK_EXCEL klasörüne aşağıdaki kod ile yedeklemekteydim.

Windows 10 Home ve Office 365 bireysel 64 bit kullanmaktayım. 1 Haziran 2020 günü yaptığım güncelleme sonrası, 3 gündür dosyamın yedeğini aşağıdaki kod ile alamıyorum.

Nedeni ne olabilir?

Bu çalışma kitabındaki kod:


Kod:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Set ds = CreateObject("Scripting.FileSystemObject")
ThisWorkbook.Save
If ds.FolderExists("D:\ARSIV_BUTCEYEDEK") = False Then
ds.CreateFolder "D:\ARSIV_BUTCEYEDEK"
End If
If ThisWorkbook.Path = "D:\ARSIV_BUTCEYEDEK" Then Exit Sub
If MsgBox(" Soruyor ... Dosyanın yedeğini D:\ARSIV_BUTCEYEDEK\ Dizinine almak istiyor musunuz?", vbInformation + vbYesNo, "Durum") = vbYes Then
yol = "D:\ARSIV_BUTCEYEDEK\" & Replace(Now, ":", "_") & "-" & ThisWorkbook.Name
ds.CopyFile ThisWorkbook.FullName, yol
End If
End Sub
 
Katılım
1 Ağustos 2019
Mesajlar
839
Excel Vers. ve Dili
Türkçe excel 2016
İngilizce excel 2016
Altın Üyelik Bitiş Tarihi
19-10-2021
Değerli Dostlar,


4 gün öncesine değin, masaüstündeki "C:\Users\aaa\Desktop\2020_Harcamaları.xlsx" dosyamı, her hafta D:\YEDEK_EXCEL klasörüne aşağıdaki kod ile yedeklemekteydim.

Windows 10 Home ve Office 365 bireysel 64 bit kullanmaktayım. 1 Haziran 2020 günü yaptığım güncelleme sonrası, 3 gündür dosyamın yedeğini aşağıdaki kod ile alamıyorum.

Nedeni ne olabilir?

Bu çalışma kitabındaki kod:


Kod:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Set ds = CreateObject("Scripting.FileSystemObject")
ThisWorkbook.Save
If ds.FolderExists("D:\ARSIV_BUTCEYEDEK") = False Then
ds.CreateFolder "D:\ARSIV_BUTCEYEDEK"
End If
If ThisWorkbook.Path = "D:\ARSIV_BUTCEYEDEK" Then Exit Sub
If MsgBox(" Soruyor ... Dosyanın yedeğini D:\ARSIV_BUTCEYEDEK\ Dizinine almak istiyor musunuz?", vbInformation + vbYesNo, "Durum") = vbYes Then
yol = "D:\ARSIV_BUTCEYEDEK\" & Replace(Now, ":", "_") & "-" & ThisWorkbook.Name
ds.CopyFile ThisWorkbook.FullName, yol
End If
End Sub
Bu makroyu denermisiniz

Kod:
Sub AKTİF_DOSYAYI_YEDEKLE()
    Dim DosyaSistemi As Object, Aktif_Dosya_Adı As String
    Dim Yedek_Dosya_Adı As String, Kayıt_Yeri As String
    
      
    Set DosyaSistemi = CreateObject("Scripting.FileSystemObject")
    Aktif_Dosya_Adı = ThisWorkbook.FullName
    Yedek_Dosya_Adı = Replace(ThisWorkbook.Name, ".xlsm", "") & Format(Date, " dd_mm_yyyy") & "_" & Format(Now, "hh_mm") & ".xlsm"
 
    Kayıt_Yeri = "D:\YEDEK_EXCEL\" & Yedek_Dosya_Adı
    
    ThisWorkbook.Save
 
    On Error Resume Next
    If Dir("D:\YEDEK_EXCEL\") = "" Then MkDir "D:\YEDEK_EXCEL\"
    DosyaSistemi.copyfile Aktif_Dosya_Adı, Kayıt_Yeri
 
    MsgBox "Dosyanız aşağıdaki isimle yedeklenmiştir." & Chr(10) & Kayıt_Yeri, vbInformation
End Sub
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,569
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Sayın metin_0606,


İlginiz ve kısa süredeki yanıtınız için teşekkür ederim. Yazdığınız kod çalışıyor.

Acaba, D: diskine kayıt yaparken, dosyanın başına resimdeki gibi; kayıt tarihi, saat, dakika, saniye eklenmesi için kod'a nasıl bir ekleme yapılması gerekiyor?

Saygılar,

218803
 
Katılım
1 Ağustos 2019
Mesajlar
839
Excel Vers. ve Dili
Türkçe excel 2016
İngilizce excel 2016
Altın Üyelik Bitiş Tarihi
19-10-2021
Sayın metin_0606,


İlginiz ve kısa süredeki yanıtınız için teşekkür ederim. Yazdığınız kod çalışıyor.

Acaba, D: diskine kayıt yaparken, dosyanın başına resimdeki gibi; kayıt tarihi, saat, dakika, saniye eklenmesi için kod'a nasıl bir ekleme yapılması gerekiyor?

Saygılar,

Ekli dosyayı görüntüle 218803
Makro kaydederken tarih ve saati ekliyor
 
Katılım
1 Ağustos 2019
Mesajlar
839
Excel Vers. ve Dili
Türkçe excel 2016
İngilizce excel 2016
Altın Üyelik Bitiş Tarihi
19-10-2021
Sayın metin_0606,


İlginiz ve kısa süredeki yanıtınız için teşekkür ederim. Yazdığınız kod çalışıyor.

Acaba, D: diskine kayıt yaparken, dosyanın başına resimdeki gibi; kayıt tarihi, saat, dakika, saniye eklenmesi için kod'a nasıl bir ekleme yapılması gerekiyor?

Saygılar,

Ekli dosyayı görüntüle 218803
Yedek Dosya adı kısmını bununla değiştiriniz
Yedek_Dosya_Adı = Format(Date, " dd_mm_yyyy") & "_" & Format(Now, "hh_mm") & "_" & Replace(ThisWorkbook.Name, ".xlsm", "") & ".xlsm"
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,569
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Merhaba,


Kodunuzu "Bu Çalışma Kitabı" na kaydettim. Yedeklenecek dosya şifre ile korunmaktadır.

Resimde de görüleceği; (1) kodunuzu yazdığım yer, (2) dosya kapanırken çıkan pencere, (3) istediğim dosya adı başlangıcındaki tarih biçimi.
Ancak kodunuzun yedekle yapmadığını fark ettim.
 

Ekli dosyalar

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,070
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Bu makro modülden çalışacak klasik bir makro. Sanıyorum siz BuÇalışmaKitabına yazılacak bir kodla dosyanın otomatik olarak kaydedilmesini istiyorsunuz. Eğer öyleyse kurgunun değişmesi gerekir bildiğim kadarıyla.
 
Katılım
1 Ağustos 2019
Mesajlar
839
Excel Vers. ve Dili
Türkçe excel 2016
İngilizce excel 2016
Altın Üyelik Bitiş Tarihi
19-10-2021
D sürücüsündeki klasörünüzün ismi 00_EXCEL_YEDEK mi ben makroyu denedim sorunsuz çalışıyor Yusuf beyin dediği gibi ise o farklı bir durum modüle kopyalayıp çalıştırınız
Kod:
Sub AKTİF_DOSYAYI_YEDEKLE()
    Dim DosyaSistemi As Object, Aktif_Dosya_Adı As String
    Dim Yedek_Dosya_Adı As String, Kayıt_Yeri As String
    
      
    Set DosyaSistemi = CreateObject("Scripting.FileSystemObject")
    Aktif_Dosya_Adı = ThisWorkbook.FullName
    Yedek_Dosya_Adı = Format(Date, " dd_mm_yyyy") & "_" & Format(Now, "hh_mm") & "_" & Replace(ThisWorkbook.Name, ".xlsm", "") & ".xlsm"
 
    Kayıt_Yeri = "D:\00_YEDEK_EXCEL\" & Yedek_Dosya_Adı
    
    ThisWorkbook.Save
 
    On Error Resume Next
    If Dir("D:\00_YEDEK_EXCEL\") = "" Then MkDir "D:\00_YEDEK_EXCEL\"
    DosyaSistemi.copyfile Aktif_Dosya_Adı, Kayıt_Yeri
 
    MsgBox "Dosyanız aşağıdaki isimle yedeklenmiştir." & Chr(10) & Kayıt_Yeri, vbInformation
End Sub
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,569
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Sayın YUSUF44,


Daha önceki kod,"Bu Çalışma Kitabı" kısmında olduğu için aynı yere kodu yazdım. Bir de "Modul" e ekleyerek deneyeyim.

Bilgilendirmeniz için teşekkür ederim.
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,569
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,070
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Nasıl çözdüğünüzü de belirtin de merakta kalmayalım ;)
 

assenucler

Altın Üye
Katılım
19 Ağustos 2004
Mesajlar
3,569
Excel Vers. ve Dili
Ofis 365 TR 64 Windows 11 Home Single Language x64 TR
Altın Üyelik Bitiş Tarihi
29-05-2025
Sayın YUSUF44,

Üstadım 8. iletideki kodu sizin öneriniz üzerine modül'den çalıştırdıktan sonra, sorun çözüldü.
Bilgilerinizi rica ederim.
 
Üst