• DİKKAT

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

.: UserForm'daki Nesneleri Grup Olarak Yönetmek :.

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,986
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Merhabalar.

Belgemde kullanacağım UserForm üzerinde, 8 adet ComboBox ve 7 adet de TextBox var.
Bunların tümünü de işlevlerine göre adlandırdım.

Mevcut nesneleri gruplandırarak, tek komut ile (bunu bir ChecBox ile yapmak istiyorum) ve TabIndex sayılarından hareketle;
-- örneğin ComboBox'ların ilk 5'inin visible veya enable özelliklerini True/False haline getirebilir miyim?
-- False özelliğini seçtiğimde TabIndex özelliği True olan ilk nesneyi seçili (setFocus) hale getirebilir miyim?

İlgileneceklere şimdiden teşekkürler.
 
............
Bunların tümünü de işlevlerine göre adlandırdım.
........
Ömer Bey, örnek bir dosya ekleseydiniz daha sağlıklı bir cevap olurdu.
Şaban Bey sağ olunuz ancak, konu açılış mesajında özellikle belirtmiştim.
Konu, bundan önce açtığım son konudaki UserForm.
O konudaki uyarı ile (anlamlı da geldi tabi) nesneleri işlevlerine göre adlandırmıştım, onun için For-Next döngüsü kurmak için TabIndex gibi başka bir ölçüt kullanmak lazım sanki.
Zaten kod olayıyla yeni ilgilenmeye başladım, sayfaya yönelik kodlarla ilgilenmek bile benim için şu aşamada başarı sayılabilir (dizi işlemleri filan yok tabi, halen worksheetfunction aşamasındayım yani) .
Hem vba hem UserForm olunca konu; kaldığım yerde kalıyorum.
 
Son düzenleme:
Ömer Bey,

Nesnelerin tipine göre sorgulama yapabilirsiniz.

Kod:
For Each Nesne In Me.Controls
    MsgBox TypeName(Nesne)
Next

Bu şekilde ismini değiştirseniz dahi nesnelerinizi yönetebilirsiniz.

Ya da bu işlemi yapmak istediğiniz nesnelerinizi bir FRAME içine alıp buna göre sorguda oluşturabilirsiniz. Böylece nesneleri bir grup içine almış olursunuz.

Kod:
For Each Nesne In Me.[COLOR="Red"]Frame1[/COLOR].Controls
    MsgBox TypeName(Nesne)
Next
 
Sayın AYHAN, belirttiğiniz yöntemi bilgisayar başına geçince uygulamaya çalışacağım, sanırım MsgBox satırlarının yerine Nesne.Enable=False yazacağım.
Ancak burada nesne tipini veya tabindex i nasıl ilave edeceğimi bilmediğimden mecburen deneme yanılma yöntemi devreye girecek. Bilgilendirme için teşekkürler.
 
Geri
Üst