Userformun (X) tuşu

Katılım
25 Ekim 2006
Mesajlar
76
Excel Vers. ve Dili
Office2003 Tr
Userformun (X) tuşuna aşağıdaki kodu ekledim, çıkan mesaj kutusunda "evet"i tıklayınca sorunsuz çalışıyor fakat "hayır"ı tıklayınca userform kayboluyor. Noktalı yere ne eklediysem olmadı beceremedim.
Ne yapmalıyım ki mesaj kutusunda "hayır" tıklanınca kodlar kesilsin ve userforma dönsün ?

Kod:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = vbFormControlMenu Then

mesas = MsgBox("Programdan çıkılacak. Devam Etmek İstiyor musunuz..?", vbYesNo, "Çıkılsın mı...?")
If mesas = vbYes Then
GoTo son
End If
'................................
End If
son:
Application.Quit
End Sub
 
S

Skorpiyon

Misafir
Sayın Aktolgalı,

Goto son komutundan sonra
Else
exit sub
UserForm1.Hide 'Kendi formunuzun adı
UserForm1.Show



ekleyerek deneyin.

Saygılarımla...
 
Son düzenleme:
Katılım
25 Ekim 2006
Mesajlar
76
Excel Vers. ve Dili
Office2003 Tr
Sn.Sertkaya maalesef değişik varyasyonlarını denememe rağmen olmadı.

Siz çözümünüzü kodların tamamını yazarak gösterir misiniz ?
 
S

Skorpiyon

Misafir
Sayın Aktolgali,​

Aşağıdaki şekilde deneyin ama her ne hikmetse (X) işareti 2. kez tıklandığında tepki vermiyor.

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = vbFormControlMenu Then
mesas = MsgBox("Programdan çıkılacak. Devam Etmek İstiyor musunuz..?", vbYesNo, "Çıkılsın mı...?")
If mesas = vbYes Then
GoTo son
Else
UserForm1.Hide 'Siz kendi formunuzun ismini yazınız.
UserForm1.Show
Exit Sub
End If
End If
son:
Application.Quit
End Sub

Saygılarımla...​
 
Katılım
25 Ekim 2006
Mesajlar
76
Excel Vers. ve Dili
Office2003 Tr
Sn.Sertkaya;

Bu userformun üzerinde başka sayfalara gitmemi sağlayan butonlar var. Bu işlemi yaptıktan sonra userform ekrandan gitmiyor, o butonların her birinin kodunda "unload userform" kodu olmasına rağmen.
Yani bi butona tıklıyorum arkada sayfa görünüyor ama tam orta yerinde userform arz-ı endam ediyor :)
 
S

Skorpiyon

Misafir
Sayın Aktolgali,

Dosyanızdan küçük bir örneği ekleyebilir misiniz ?
Veya Unload Userform yerine, Userform.Hide deyin.

Saygılarımla...
 
S

Skorpiyon

Misafir
Sayın Aktolgali,

Sizin örneğiniz yerine böyle bir şey denemez misiniz ?

Sanırım daha çok işinizi görecektir. Kullanıcıyı (X) kullanmamaya zorlamak gibi.

Saygılarımla...
 

Kemal Demir

Özel Üye
Katılım
29 Temmuz 2004
Mesajlar
2,108
Günaydın,

Kod:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = vbFormControlMenu Then

mesas = MsgBox("Programdan çıkılacak. Devam Etmek İstiyor musunuz..?", vbYesNo, "Çıkılsın mı...?")
If mesas = vbYes Then
GoTo son
Else
[b]'Alt Satırı ilave etmek ile sorun halledilebilir.Ama daha mantıklı cozumleri tavsiye ederim.[/b]
GoTo dur
End If
End If
son:
Application.Quit
[b] ' İlave Edilen Satır [/b]
dur: Cancel = True
End Sub
İyi Calismalar.
 
Katılım
25 Ekim 2006
Mesajlar
76
Excel Vers. ve Dili
Office2003 Tr
Teşekkürler..
 
Üst