Excel'de bir UserForm, varsayılan olarak sağ üstteki X simgesine basıldığında kapanır. Bu dosya, X simgesiyle kapatmayı engelleyen ve kapatma denemesinde kullanıcıya uyarı mesajı gösteren hazır bir UserForm örneğidir.
Dosyanın içeriği
- UserForm1: X simgesinin davranışını denetleyen kodun bulunduğu form modülüdür.
Makrolar
Dosya makro içerir (.xlsm), açarken makroları etkinleştirmeniz gerekir. Dosyada zararlı bir işlem yoktur; dosya silme ya da dışarıya bağlantı kodu bulunmaz.- UserForm_QueryClose: Form kapatılmaya çalışıldığında otomatik çalışan olay prosedürüdür. CloseMode değeri vbFormControlMenu ise, yani kapatma X simgesiyle yapılmışsa, Cancel değeri True yapılarak kapatma iptal edilir.
- İptalden önce MsgBox ile bir hata mesajı açılır. Mesajda Application.UserName ile Excel kullanıcı adı yer alır ve kullanıcıdan kapat butonunu kullanması istenir. Mesaj kutusu vbCritical simgesiyle gösterilir.
- Kapatma başka yollarla (örneğin koddan Unload ile) yapıldığında CloseMode değeri farklı olacağından form normal şekilde kapanır.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- Alt+F11 ile VBA düzenleyicisini açın ve UserForm1 formunu çalıştırın (F5).
- Form üzerindeki X simgesine basarak uyarı mesajını ve kapatmanın iptal edildiğini görün.
- Kendi formunuzda aynı davranışı elde etmek için UserForm_QueryClose prosedürünü formun kod bölümüne kopyalayın.
- Formu kapatmak için kullanıcıya bir kapat butonu koymayı unutmayın; kapatma işlemi bu butonun koduyla yapılır.