Excel'de dinamik basamaklı liste kutuları nasıl oluşturulur?
Excel’de basamaklı doğrulama açılır listesi oluşturmayı biliyor olabilirsiniz. Peki ya Excel’de dinamik basamaklı liste kutuları nasıl oluşturulur? Bu makale, bu işlemi gerçekleştirmenize yardımcı olacak etkili bir VBA yöntemini açıklıyor.
VBA koduyla dinamik basamaklı liste kutuları oluşturun
VBA koduyla dinamik basamaklı liste kutuları oluşturun
Aşağıdaki ekran görüntüsünde gösterildiği gibi, İçecek sütunundaki benzersiz değerleri içeren bir ana liste kutusu oluşturun ve alt liste kutusunda, ana liste kutusundaki seçime göre ilgili tüm değerleri görüntüleyin. Aşağıdaki VBA kodu, bunu başarıyla gerçekleştirmenize yardımcı olur. Lütfen aşağıdaki adımları izleyin.

1. İlk olarak, İçecek sütunundaki tüm benzersiz değerleri çıkarmanız gerekir. Bunun için boş bir hücre seçin ve =IFERROR(INDEX($A$2:$A$11, MATCH(0,COUNTIF($J$1:J1, $A$2:$A$11), 0)),"") formülünü Formül Çubuğuna girin; ardından Ctrl + Shift + Enter tuşlarına basın. Tüm benzersiz değerleri almak için Doldurma Kulpunu aşağı doğru sürükleyin. Ekran görüntüsüne bakın:

Not: Formülde, $A$2:$A$11 benzersiz değerleri çıkaracağınız aralıktır. J1 hücresi, formülünüzün bulunduğu hücrenin hemen üstündeki hücredir.
İpucu: Formülü hatırlamak ve uygulamak çok zor geliyorsa, bir sütundan hızlıca tüm benzersiz değerleri çıkarmak için Yinelenen/Benzersiz Hücreleri Seç aracı, Kutools for Excel size harika bir seçenek olacaktır.
Benzersiz değerleri çıkaracağınız sütunu seçin. Ardından aracı etkinleştirmek için Kutools > Seç > Yinelenen/Benzersiz Hücreleri Seç seçeneğine tıklayın. Yinelenen/Benzersiz Hücreleri Seç iletişim kutusunda, Benzersiz Değerler (İlk yineleneni dahil et) seçeneğini işaretleyin ve Tamam düğmesine tıklayın. Böylece sütundaki tüm benzersiz değerler seçilir. Lütfen bunları kopyalayıp yeni bir yere yapıştırın. Ekran görüntüsüne bakın:

Kutools for Excel: 60 gün boyunca sınırsız olarak ücretsiz denenebilen, 200'den fazla kullanışlı Excel eklentisiyle.Şimdi İndirin ve Ücretsiz Deneyin!
2. İki liste kutusunu ayrı ayrı eklemek için Geliştirici > Ekle > Liste Kutusu (ActiveX Denetimi) seçeneğine tıklayın. Ekran görüntüsüne bakın:

3. Ana liste kutusuna sağ tıklayın ve bağlam menüsünden Özellikler seçeneğini seçin. Özellikler iletişim kutusunda, (Ad) alanını İçecek veya ihtiyacınıza göre başka bir isimle değiştirin, çıkarılan benzersiz değerleri içeren hücre aralığını ListeDoldurmaAralığı alanına girin ve iletişim kutusunu kapatın.

4. İkinci liste kutusunun (Ad) alanını, Özellikler iletişim kutusunda Öğe olarak değiştirmek için 3. adımı tekrarlayın.
5. Sayfa sekmesine sağ tıklayın ve açılan menüden Kodu Görüntüle seçeneğini seçin. Ardından aşağıdaki VBA kodunu Kod penceresine kopyalayın. Ekran görüntüsüne bakın:
VBA kodu: Excel'de dinamik basamaklı liste kutuları oluşturun
Dim xPreStr As String
Private Sub Drink_Click()
'Update by Extendoffice 2018/06/04
Dim I, xRows As Long
Dim xRg As Range
Dim xRegStr As String
Application.ScreenUpdating = False
xRegStr = Me.Drink.Text
Set xRg = Range("A2:A11")
xRows = xRg.Rows.Count
If xRegStr <> xPreStr Then
Me.Item.Clear
'Me.OtherListBoxName.Clear
Set xRg = xRg(1)
For I = 1 To xRows
If xRg.Offset(I - 1).Value = xRegStr Then
Me.Item.AddItem xRg.Offset(I - 1, 1).Value
'Me.OtherListBoxName.AddItem xRg.Offset(I - 1, 2).Value
End If
Next
xPreStr = xRegStr
End If
Application.ScreenUpdating = True
End Sub Notlar: Kodda İçecek ve Öğe, iki liste kutusunun adlarıdır; bunları kendi isimlerinizle değiştirin.

6. Alt+Q tuşlarına basarak Microsoft Visual Basic for Applications penceresini kapatın.
7. Tasarım Modunu kapatmak için Geliştirici > Tasarım Modu seçeneğine tıklayın.
Artık ana liste kutusundan Kahve gibi bir içecek türü seçtiğinizde, ikinci liste kutusunda tüm kahve ürünlerini göreceksiniz. Çay veya Şarap seçtiğinizde ise yalnızca ilgili çay veya şarap öğeleri görüntülenir. Detaylar için ekran görüntüsüne göz atın:

İlgili makaleler:
- Excel'de bağlı açılır liste hücresi, seçim değiştiğinde otomatik olarak nasıl temizlenir?
- Excel'de bağlı basamaklı açılır listeler nasıl oluşturulur?
- Excel'de bir açılır listeden değer seçildiğinde diğer hücreler otomatik olarak nasıl doldurulur?
- Excel'de açılır liste şeklinde bir takvim nasıl oluşturulur?
- H ow to save or retain selections of ActiveX list boxes in Excel?
En İyi Office Verimlilik Araçları
Excel becerilerinizi Kutools for Excel ile güçlendirin ve hiç olmadığı kadar verimli çalışmanın keyfini çıkarın.Kutools for Excel, üretkenliğinizi artırmak ve Zamanı Kaydet için 300'den fazla gelişmiş özelliğe sahiptir.İhtiyacınız olan özelliği hemen edinmek için buraya tıklayın…
Office Tab, Office uygulamalarına sekmeli arayüz getirir ve işlerinizi çok daha kolay hale getirir
- Word, Excel ve PowerPoint içinde sekmeli düzenleme ve okumayı etkinleştirin, Publisher, Access, Visio ve Project.
- Birden fazla belgeyi yeni pencerelerde değil, aynı pencerenin yeni sekmelerinde açın ve oluşturun.
- Günlük üretkenliğinizi %50 artırır ve size her gün yüzlerce fare tıklamasından tasarruf sağlar!
Tüm Kutools eklentileri — tek bir yükleyiciyle!
Kutools for Office paketi, Excel, Word, Outlook ve PowerPoint için eklentileri ile birlikte Office Tab Pro’yu da içerir; bu da Office uygulamalarında çalışan ekipler için idealdir.
- Hepsi bir arada paket— Excel, Word, Outlook ve PowerPoint eklentileri + Office Tab Pro
- Tek yükleyici, tek lisans— birkaç dakikada kurulum (MSI uyumlu)
- Birlikte daha iyi çalışır— Office uygulamalarında verimliliği akıcı hale getirir
- 30 günlük tam özellikli deneme— kayıt gerekmez, kredi kartı gerekmez
- En iyi fiyat-performans— tek tek eklenti satın almaya göre tasarruf edin