Excel'de Adlandırılmış Aralık verileriyle Açılır Liste Kutusunu nasıl doldurabilirsiniz?
Belirli bir aralığın verileriyle bir Açılır Liste Kutusu (ActiveX Kontrolü) belirleyebilir ve bu aralığı açılır liste kutusunun ListFillRange özelliklerine ekleyebilirsiniz. Ancak Excel'de adlandırılmış bir aralığın verileriyle bir Açılır Liste Kutusunu nasıl dolduracağınızı biliyor musunuz? Örneğin, çalışma sayfanızda bir hücre aralığı adlandırdınız ve şimdi bu aralık adını bir Açılır Liste Kutusu'na belirtmeniz gerekiyor. Bir açılır liste kutusunda aralık adını seçtiğinizde, bu adlandırılmış aralıktaki tüm hücre değerleri başka bir Açılır Liste Kutusu'nda otomatik olarak doldurulacaktır. Bu makale, bu sorunu çözmek için bir VBA yöntemi tanıtacaktır.
VBA koduyla adlandırılmış bir aralığın verileriyle Açılır Liste Kutusunu doldurma
VBA koduyla adlandırılmış bir aralığın verileriyle Açılır Liste Kutusunu doldurma
Lütfen aşağıdaki işlemleri yaparak Excel'de adlandırılmış bir aralıkla Açılır Liste Kutusunu doldurun.
1. Çalışma sayfanızdaki tüm başlıkları seçin (bu durumda A1:E1'i seçiyorum) ve ardından aşağıdaki ekran görüntüsünde gösterildiği gibi Ad Kutusu'na bir isim yazın.
2. Her sütunun verilerini başlığı hariç seçin ve ardından sütunları ayrı ayrı Ad Kutusu'nda adlandırın. Ekran görüntüsüne bakın:
Bu durumda, A2:A8, B2:B8, C2:C8, D2:D8 ve E2:E8 aralıklarını sırasıyla Tarih, Mağaza, Ürünler, Satışlar ve Hafta İçi olarak adlandırdım.
3. Geliştirici > Ekle > Açılır Liste Kutusu (ActiveX Kontrolü) öğesine tıklayarak bir Açılır Liste Kutusu ekleyin. Ekran görüntüsüne bakın:
4. Üçüncü adımı tekrar ederek çalışma sayfasına başka bir Açılır Liste Kutusu ekleyin.
5. Sayfa sekmesine sağ tıklayın ve ardından bağlam menüsünden Kodu Görüntüle'yi tıklayın. Ekran görüntüsüne bakın:
6. Açılan Microsoft Visual Basic for Applications penceresinde lütfen aşağıdaki VBA kodunu Kod penceresine kopyalayıp yapıştırın.
VBA kodu: Adlandırılmış bir aralıkla Açılır Liste Kutusunu doldurma
Private Sub ComboBox1_Change()
'Updated by Extendoffice 2018/1/30
Dim xRg As Range
Set xRg = Range(Me.ComboBox1.Text)
Me.ComboBox2.List = Application.WorksheetFunction.Transpose(xRg)
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim xRg As Range
Set xRg = Range("Headers")
Me.ComboBox1.List = Application.WorksheetFunction.Transpose(xRg)
End Sub
Not: Kodda ComboBox1, tüm aralık adlarını listeleyeceğiniz açılır liste kutusunun adıdır ve ComboBox2, belirtilen adlandırılmış aralığın verilerinin doldurulacağı açılır liste kutusunun adıdır. “Başlıklar”, 1. adımda oluşturduğunuz aralık adıdır.
7. Geliştirici > Tasarım Modu'na tıklayarak Tasarım Modunu kapatın.
8. Kodu etkinleştirmek için çalışma sayfasındaki herhangi bir hücreye tıklayın. İlk açılır liste kutusundaki ok düğmesine tıklayın, tüm adlandırılmış aralıkların içeride listelendiğini görebilirsiniz. Ekran görüntüsüne bakın:
İlk açılır liste kutusunda bir adlandırılmış aralık seçtiğinizde, ilgili hücre verileri aşağıdaki ekran görüntüsünde gösterildiği gibi ikinci açılır liste kutusunda doldurulacaktır:
Excel'de kolayca onay kutularıyla açılır liste oluşturun:
Şirketimizin Açılır Liste Kutusu ile Onay Kutuları araçları Kutools for Excel belirli bir aralıkta, geçerli çalışma sayfasında, geçerli çalışma kitabında veya tüm açık çalışma kitaplarında ihtiyaçlarınıza göre kolayca onay kutularıyla açılır liste oluşturmanıza yardımcı olabilir.
Hemen indirin ve deneyin! (30-günlük ücretsiz deneme)
İlgili makaleler:
- Excel'de açılır liste kutusu değerini aktif hücreye nasıl kopyalayabilirsiniz?
- Excel'de açılır liste kutusu çıktısında tarih formatını nasıl görüntüleyebilirsiniz?
- Excel'de açılır liste kutusuna yazmayı nasıl önlersiniz veya devre dışı bırakırsınız?
- Çalışma kitabı açıldığında belirtilen verilerle açılır liste kutusunu nasıl doldurabilirsiniz?
- Excel'deki açılır listede değerleri seçerken diğer hücreleri otomatik olarak nasıl doldurabilirsiniz?
En İyi Ofis Verimlilik Araçları
Kutools for Excel ile Excel becerilerinizi geliştirin ve daha önce hiç olmadığı kadar verimli olun. Kutools for Excel, üretkenliğinizi artırmak ve zamanınızı kaydetmek için300'den fazla gelişmiş özellik sunar. En çok ihtiyacınız olan özelliği almak için buraya tıklayın...
Office Tab, Office'e sekmeli arayüz getirir ve işinizi çok daha kolaylaştırır
- Word, Excel, PowerPoint'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
- Aynı pencerenin yeni sekmelerinde birden fazla belge açın ve oluşturun, yeni pencerelerde değil.
- Verimliliğinizi %50 artırır ve her gün yüzlerce fare tıklamasını azaltır!