İptal düğmesinde Setfocus sorunu

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Ekli dosyada userformdan veri girişi yaptıktan sonra iptal düğmesiyle formu kapatmak istediğimde nesnelerdeki setfocus kodları nedeniyle hata veriyor. Form ilk açıldığında iptale bastığımda sıkıntı olmuyor ama nesnelere veri girdikten sonra sorun çıkıyor.

Nasıl düzeltebilirim?
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,333
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba @YUSUF44,

Bu işten kurtulmanın en kolay yolu hata veren satırların üstüne On Error Resume Next komutunu eklemektir.

Ama ben bu komutu kullanmayı çok fazla sevmiyorum. Başka tehlikeli sonuçlar doğurabilir.

Bu sebeple aşağıdaki yöntemi uygulamanızı tavsiye ediyorum.


Kodlarınızın General bölümüne (en üst satırına) aşağıdaki satırı ekleyiniz.

Dim Kontrol As Boolean

Sonra formu çarpıdan kapatma olayı için aşağıdaki kod bloğunu ekleyiniz.

C++:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
    Kontrol = True
End Sub
Bu aşamadan sonra mesela ben ilk başta deneme yaparken Evrak Kayıt No kodları hata vermişti. Bu kod bloğunu aşağıdaki gibi düzenlerseniz artık hata vermeyecektir.

C++:
Private Sub evrakno_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    If Kontrol = True Then Exit Sub
    tcno.SetFocus
End Sub
Bu şekilde başka hata veren kod bloklarınız varsa aynı mantıkla düzenleyebilirsiniz.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Çok teşekkürler. Tüm setfocus olan olaylarda belirttiğiniz eklemeyi yapınca sorun düzeldi.
 
Üst