Excel Formül
Modül 7: İleri Düzey Uygulamalar ve Gerçek Hayat Senaryoları

VBA ile Otomatik Excel Yedekleme Sistemi

Yoğun veri girişi yapılan Excel dosyalarında kazara silinen satırlar veya kaydedilmeden kapatılan önemli veriler büyük krizlere yol açabilir. Bu riski tamamen ortadan kaldırmak için Workbook_BeforeClose olay yordamı (Event) kullanarak dosya her kapatıldığında arka planda tarih ve saat damgalı bir yedek oluşturan sistem kurabilirsiniz.

Workbook_BeforeClose Olayı Nasıl Kullanılır?

Bu özel yordam doğrudan ThisWorkbook modülüne yazılır. Kullanıcı dosyayı kapatmak istediği an makro otomatik tetiklenir ve dosyayı yedek klasörüne kopyalar.

Örnek Otomatik Yedekleme Kod Kalıbı

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim yedekYolu As String
    yedekYolu = "C:\Yedekler\Rapor_" & Format(Now, "yyyy-mm-dd_hh-nn") & ".xlsm"

    ' Dosyayı yedek klasörüne kopyala
    Me.SaveCopyAs yedekYolu
End Sub

Canlı Simülatör: Otomatik Tarih Damgalı Yedek Alma

Aşağıdaki simülasyon, dosya kapatma anında arka planda çalışan yedekleme olayını tetikleyecektir. Yedek Al ve Kapat butonuna basın.

Visual Basic Editörü (ThisWorkbook)
ThisWorkbook (Auto Backup)
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    ' Otomatik tarih damgalı yedek oluştur
    Range("A1").Value = "Son Yedek: 2026-11-02_16-00.xlsm"

    MsgBox "Çalışma kitabının güvenli yedeği başarıyla alındı!", vbInformation
End Sub
Canlı Excel Sayfa Görünümü
A1
A (Yedekleme Durum Günlüğü)
1
Microsoft Excel ✕
Çalışma kitabının güvenli yedeği başarıyla alındı!