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 güçlendirin, daha önce hiç yaşamadığınız bir verimlilik deneyimini yaşayın. Kutools for Excel, üretkenliğinizi artıracak ve zamanı kaydetmenizi sağlayacak300’den fazla gelişmiş özellik sunar. En çok ihtiyaç duyduğunuz özelliği almak için buraya tıklayın...
Office Tab, Office’e sekmeli arayüz kazandırır ve işinizi çok daha kolaylaştırır
- Word, Excel, PowerPoint’te sekmeli düzenleme ve okuma işlevini etkinleştirin.
- Aynı pencere içerisinde yeni sekmelerde birden fazla belge açın veya oluşturun, yeni pencerelerde açmak yerine.
- Verimliliğinizi %50 artırın, her gün yüzlerce fare tıklamasını sizin için azaltın!