Çözüldü Excel Dosyasını Kapatırken Uyarı Almak

cavanoos

Altın Üye
Katılım
17 Aralık 2008
Mesajlar
727
Excel Vers. ve Dili
Microsoft 365
Altın Üyelik Bitiş Tarihi
11-01-2026
Merhaba arkadaşlar;

Excel dosyasını kapatmak için dokunduğumuzda, uyarı mesajı alabilir miyiz ?
Alttaki kodların bir benzeri gibi olabilir.
Yardımcı olabilir misiniz ?

Excel dosyasını açtığım zaman aşağıdaki kodu kullanarak işlem yapabiliyoruz.
Sub Auto open()
........
End Sub


Makro çalışırken ekrana gelen mesaj kutusu ile makroya devam etmek, yada makroyu sonlandırmak için aşağıdaki kodu kullanıyoruz.

sor = MsgBox(" Bilgileri kaydetmek istiyormusun? ", vbYesNo, "Başlık")
If sor = vbNo Then
Exit Sub
End If
 

tugkan

Altın Üye
Katılım
6 Kasım 2004
Mesajlar
445
Excel Vers. ve Dili
Excel 2016
Türkçe 64 BIT
Altın Üyelik Bitiş Tarihi
16-10-2025
Evet, Excel dosyasını kapatırken bir uyarı mesajı almak için Workbook_BeforeClose olayını kullanabilirsiniz. Bu olay, kullanıcı dosyayı kapatmadan önce tetiklenir. Aşağıda örnek bir VBA kodu bulunmaktadır:
Kod:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim sor As VbMsgBoxResult
    sor = MsgBox("Bilgileri kaydetmek istiyor musunuz?", vbYesNo + vbQuestion, "Başlık")
    
    If sor = vbNo Then
        Cancel = True  ' Dosyanın kapanmasını engeller
    ElseIf sor = vbYes Then
        ' Kaydetme işlemi yapılabilir
        ThisWorkbook.Save  ' Örneğin, dosyayı kaydetmek için bu satır eklenebilir.
    End If
End Sub
Açıklama:
  • Workbook_BeforeClose: Bu olay, dosya kapatılmadan önce çalışır.
  • Cancel = True: Eğer kullanıcı "Hayır" diyorsa, dosyanın kapanmasını engeller.
  • ThisWorkbook.Save: "Evet" cevabını verdiklerinde, dosya otomatik olarak kaydedilir. Bu satır opsiyonel olup, kaydetmek isterseniz ekleyebilirsiniz.
Bu kodu, ThisWorkbook objesi altında VBA editörüne eklemeniz gerekir. Bunu yapmak için:

  1. Excel dosyanızı açın.
  2. Alt + F11 tuşlarına basarak VBA editörünü açın.
  3. Sol taraftaki proje gezgininde ThisWorkbook'ı seçin.
  4. Yukarıdaki kodu bu modüle yapıştırın.
  5. Dosyanızı kaydedin ve kapatmayı deneyin.
Bu kod, dosya kapatılmadan önce kullanıcıya "Kaydetmek istiyor musunuz?" şeklinde bir uyarı mesajı gösterir.
 

cavanoos

Altın Üye
Katılım
17 Aralık 2008
Mesajlar
727
Excel Vers. ve Dili
Microsoft 365
Altın Üyelik Bitiş Tarihi
11-01-2026
İşte bu, teşekkür ederim :)
 
Üst