Bu dosya, bir UserForm üzerindeki üç ComboBox'un birbirine bağlı çalışmasını gösteren makrolu bir örnektir. İlk kutuda il seçilir, ikinci kutu seçilen ile ait ilçelerle dolar, üçüncü kutu seçilen ilçeye ait mahalle veya köy adlarını listeler. Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
Dosyanın içeriği
- Sayfa1: A1:C22 aralığında üç sütunlu veri listesi bulunur. A sütunu Il, B sütunu ilçe, C sütunu MhKy (mahalle/köy) bilgisini tutar. Örnek satırlarda İstanbul için Gökçeali, Subaşı, Akalan, İhsaniye ve Oklalı gibi kayıtlar yer alır.
- Sayfa1 üzerinde UserForm1'i açan bir CommandButton1 düğmesi vardır.
- UserForm1: Birbirine bağlı üç ComboBox'u barındırır.
Makrolar
- CommandButton1_Click: Sayfa1'deki düğmeye tıklandığında UserForm1'i açar.
- UserForm_Initialize: Form açılırken ComboBox1'i temizler ve A sütunundaki illeri, tekrar edenleri bir kez olacak biçimde listeye ekler.
- ComboBox1_Change: İl seçildiğinde A sütununu tarar; seçilen ile ait ilçeleri, B sütununda ilk geçtiği satırdan alarak ComboBox2'ye ekler. Bu sayede aynı ilçe adı tekrar etmez.
- ComboBox2_Change: İlçe seçildiğinde ComboBox3'ü temizler; B sütununda seçilen ilçeyle eşleşen satırların C sütunundaki değerlerini ComboBox3'e ekler.
- Kod sonunda yorum satırı olarak bırakılmış alternatif bir UserForm_Initialize yazımı vardır; bu bölüm çalışmaz. Dosyada dosya silme veya dışarıya bağlantı kuran bir kod bulunmaz.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- Sayfa1'deki CommandButton1 düğmesine tıklayarak formu açın.
- İlk ComboBox'tan il seçin.
- İkinci ComboBox'ta listelenen ilçelerden birini seçin.
- Üçüncü ComboBox'tan mahalle veya köyü seçin.
- Kendi verinizi kullanmak için Sayfa1'deki A, B ve C sütunlarını il, ilçe ve mahalle/köy sırasıyla, başlık satırı 1. satırda kalacak biçimde doldurun; ilçeler B sütununda ile göre gruplu girilmelidir.