• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Tüm UserFormlarda MsgBox çıkıyor

  • Konbuyu başlatan Konbuyu başlatan Usyk
  • Başlangıç tarihi Başlangıç tarihi
Katılım
20 Temmuz 2006
Mesajlar
171
Excel Vers. ve Dili
Office 2016 Tr
Merhaba,

4 adet UserForm var ve hepsinde Listbox var.
UserForm'ların initialize bölümlerinde;

If ListBox1.ListCount < 1 Then
MsgBox "Kayıt yok"
End If

şeklinde MsgBox kodları var. İlgili UserForm açıldığında o UserForm üzerindeki ListBox ta kayıt yok ise bildirmesini istiyorum.

A UserForm'u açıldığında A UserFormu üzerindeki ListBox'ta kayıt yok ise, A UserForm'u initialize kısmına yazdığım MsgBox
B UserForm'u açıldığında B UserFormu üzerindeki ListBox'ta kayıt yok ise, B UserForm'u initialize kısmına yazdığım MsgBox
...... şeklinde.

Ancak herhangi bir UserForm'daki ListBox'ta kayıt sayısı 0 olduğunda herhangi bir UserForm açıldığında kayıt olmayan UserForm üzerindeki MsgBox çıkıyor.

Neden olabilir acaba.

If UserForm1.ListBox1.ListCount < 1 Then
MsgBox "Kayıt yok"
End If

şeklinde de denedim, farketmedi.
 
Merhaba

Userforma verileri almadan önce bu şart koymuş olabilir misiniz.?

Ekte örnek mevcut, bahsettiğiniz hata yok. Form3 boş diğerleri dolu. Sadece boş olan mesaj veriyor.

 

Ekli dosyalar

Deneyiniz.
Kod:
Private Sub UserForm_Initialize()
If Me.ListBox1.ListCount < 1 Then
MsgBox Me.Name & " kayıt yok"
End If
End Sub
 
Merhaba

Userforma verileri almadan önce bu şart koymuş olabilir misiniz.?

Ekte örnek mevcut, bahsettiğiniz hata yok. Form3 boş diğerleri dolu. Sadece boş olan mesaj veriyor.


Sayın Ömer bey,
Ana Menünün olduğu bir UserForm var, ondan diğer 4 UserForm'a CommandButton'lar ile geçiyorum.
1 nolu UserForm'a tıkladığımda, eğer 2,3 veya 4 nolu UserForm üzerindeki ListBoxların biri boş ise mesaj veriyor ve döngü sonlanmıyor. MsgBox tamama basınca gitmiyor.

Şartları UserFormlar'ın initialize kısmının sonuna, üzerindeki ListBox'lar yüklendikten sonrasına yazdım.
 
Örnek ekleyebilir misiniz.
 
Kodları "Initialize" değil aşağıdaki gibi "Activate" yazarak deneyiniz.
Kod:
Private Sub UserForm_Activate()
    If ListBox1.ListCount < 1 Then
        MsgBox "Kayıt yok"
    End If
End Sub
 
Kodları "Initialize" değil aşağıdaki gibi "Activate" yazarak deneyiniz.
Kod:
Private Sub UserForm_Activate()
    If ListBox1.ListCount < 1 Then
        MsgBox "Kayıt yok"
    End If
End Sub

Ömer bey çok teşekkür ederim. Dün gece yarısına kadar uğraştım. Çok şükür.
 
Geri
Üst