çalışma kitabı X dan kapanmasın-mesaj versin(userform d

Katılım
13 Ocak 2005
Mesajlar
212
arkadaşlar tekrar merhaba
forumda arıyorum ama bulamadım.
Userform kullanmadan yani bildiğimiz hücreli excel ekranındaki pencerenin X yani sağ üst köşedeki kırmızı kapat butonuna tıkladığımda excelin kapanmamasını istiyorum. hatta bir mesaj bile vermesini istiyorum. bu mümkün müdür?
forumda örnekleri var ancak hepsi userform ile ilgili normal bir çalışma kitabında nasıl uygulanabilir?
şimdiden teşekkürler
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Eğer sadece çalışma kitabının X dan kapatılmasını engellemek istiyorsanız, çalışma kitabına araçlar-koruma-çalışma kitabını korudan koruma koymak yeterlidir. Ama tüm excelin kapanmasını engellemek istiyorsanız, bunun için muhtemelen bir api kullanmak gerekecektir.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
ThisWorkbook modulüne, aşağıdakini yerleştirin ....

Kod:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    msgbox "hmmmm....."
    Cancel = True
End Sub
 
Katılım
13 Ocak 2005
Mesajlar
212
"hmmmm....." :)

Haluk Bey kodu yerleştirdim ancak bu sefer de excel den hiç çıkmıyor. Nereden kapat desem hmmmmmmm diyor :)
ben X butonundan değil de bir butona aşağıdaki kodu yerleştirdim bundan kapanmasını istiyorum. ama bu butona tıkladığımda da hmmmmmm :) diyor.

Sub Dikdörtgen18_Tıklat()
ActiveWorkbook.Save
MsgBox "KAYIT YAPILDI ÇIKILIYOR"
Application.Quit
End Sub
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.
şu şekilde bir denesen

[vb:1:1b9ad33a1d]Sub Dikdörtgen18_Tıklat()
ActiveWorkbook.Save
sheets(1).[a1]="1"
MsgBox "KAYIT YAPILDI ÇIKILIYOR"
Thisworkbook.Save =True
Application.Quit
End Sub[/vb:1:1b9ad33a1d]


[vb:1:1b9ad33a1d]Private Sub Workbook_BeforeClose(Cancel As Boolean)
msgbox "hmmmm....."
if sheets(1).[A1]<>1 then Cancel = True
End Sub[/vb:1:1b9ad33a1d]
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Nasıl kapatmak istediğinizi söylemediğiniz için ben de asla kapanmayacak şekilde yapmıştım ... :mrgreen:


Þimdi, daha önce verdiğim kodu silin ve onun yerine şunu yerleştirin; (ThisWorkbook modulunde...)

Kod:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    If MyCheck = False Then
        MsgBox "hmmmm....."
        Cancel = True
    End If
End Sub
Sizin Dikdörtgen18_Tıklat prosedürünün olduğu module de (bu modulün "standart" bir modul olması gereklidir - Modul1 gibi.... sayfa modulu falan degil....), sizinkinin yerine aşağıdakini yerleştirin;

Kod:
Public MyCheck As Boolean ' Bu satir, modulun en ustunde olucak
'
Sub Dikdörtgen18_Tıklat()
    ActiveWorkbook.Save
    MsgBox "KAYIT YAPILDI ÇIKILIYOR"
    MyCheck = True
    Application.Quit
End Sub
 
Katılım
3 Mart 2005
Mesajlar
571
Excel Vers. ve Dili
Excel 2000 Ing.
Düzeltme...


Sub Dikdörtgen18_Tıklat()
ActiveWorkbook.Save
Sheets(1).[a1] = "1"
MsgBox "KAYIT YAPILDI ÇIKILIYOR"
ThisWorkbook.Saved = True
Application.Quit
End Sub


Private Sub Workbook_BeforeClose(Cancel As Boolean)
If Sheets(1).[a1] <> 1 Then
MsgBox "hmmmm....."
Cancel = True
End If
End Sub[/b]
 
Katılım
24 Mayıs 2005
Mesajlar
462
Excel Vers. ve Dili
Excel 2003 Türkçe
isakarakus' Alıntı:
gene geç kaldım yaaa.
İşte excel.web farkı, başka söyleyecek bir şey bulamıyorum. Harikasınız. :arkadas:


PAÞLAÞMAK MUTLULUKTUR.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,344
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Çalışma kitabını kapatmayı bir butona bağlamak ve, X yı seçilemez kılmak için hangi yol izlenmeli?
 
Üst