ComboBox (Birleşik Giriş Kutusu) açılır liste görünümünde bir ActiveX denetimidir. Kullanıcı açılır listeden seçim yapar ve ilgili komut çalışır.

Geliştirici sekmesinde, Ekle butonunda, ActiveX Denetimleri bölümünde Birleşik Giriş Kutusuna tıklayın:

ComboBox

ComboBox özelliklerini ayarlamak için Tasarım Moduna tıklayın. ComboBox tıklayın ve yukarıdan Özelliklere tıklayın ve gerekli ayarları yapın.

Aşağıdaki komut ComboBox’ın bulundu sayfa her aktive edildiğinde çalışma sayfalarının adını listeye yükler:

Private Sub Worksheet_Activate() 

Dim Sayfa As Worksheet 

Me.CBSayfa.Clear 

For Each Sayfa In ThisWorkbook.Worksheets
     Me.CBSayfa.AddItem Sayfa.Name 
Next Sayfa 

End Sub Code language: VB.NET (vbnet)

Not: Eğer VBA kullanmadan listeyi doldurmak isterseniz ComboBox özellikler penceresindeki ListFillRange alanını doldurun. Örneğin D2:D4 yazarsanız D2, D3 ve D4 hücrelerindeki değerler listeye eklenmiş olur. Başka bir sayfadan listeye şu şekilde ekleme yapabilirsiniz: ListFillRange: Data!D2:D4

Aşağıdaki komutla kullanıcı açılır listeden seçtiği sayfaya gidebilir:

Private Sub CBSayfa_Change() 

If CBSayfa.Value <> "Lütfen seçiniz..." Then
     On Error GoTo HATA
     Worksheets(CBSayfa.Value).Select 
End If 

HATA: 
CBSayfa.Value = "Lütfen seçiniz..."      

End Sub Code language: VB.NET (vbnet)

Not: Excel açıldığında sayfa zaten aktifse ilgili sayfa listesi Worksheet_Activate() olayı tetiklenmeyeceği için ComboBox’a yüklenmeyecektir. Bunu önlemek için ThisWorkbook kod sayfasına aşağıdaki kodu eklemek gerekir:

Private Sub Workbook_Open()
     If ActiveSheet.Name = "Sayfa1" Then
         Worksheets("Sayfa2").Select
         Worksheets("Sayfa1").Select
     End If 
End SubCode language: VB.NET (vbnet)

Yayımlandı

kategorisi

yazarı:

Etiketler: