• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

ComboBox2 ye ilgili sutun verilerini getirmek

Katılım
29 Kasım 2011
Mesajlar
235
Excel Vers. ve Dili
Excel 2016 English
Merhaba,

Combobox1 den seçilen ürün ile ilgili kolon verilerinin combobox2 de gelmesini istiyorum
 

Ekli dosyalar

Merhaba.

Aşağıdaki gibi olabilir.
.
Kod:
[SIZE="2"][B]Private Sub ComboBox1_Change()[/B]
Label2 = ComboBox1: ComboBox2 = ""
ilk = Sheets("Tanım").Cells(2, ComboBox1.ListIndex + 2).Address
son = Sheets("Tanım").Cells(65536, ComboBox1.ListIndex + 2).End(3).Address
ComboBox2.RowSource = "Tanım!" & ilk & ":" & son
[B]End Sub[/B][/SIZE]
 
Sütunların yer değiştirme ihtimaline karşın alternatif olarak bu kodlar da kullanılabilir.

Kod:
[FONT="Trebuchet MS"][SIZE="2"]Private Sub ComboBox1_Change()
    Label2.Caption = ComboBox1.Value
    Set ea = Rows(1).Find(ComboBox1.Value, , , 1)
    If Not ea Is Nothing Then
        sut = Left(ea.Address(0, 0), 1): son = ea.End(4).Row
        ComboBox2.List = Range(Cells(2, sut), Cells(son, sut)).Value
    End If
End Sub[/SIZE][/FONT]
 
Sütunların yer değiştirme ihtimaline karşın alternatif olarak bu kodlar da kullanılabilir.
.......
Merhaba.

Benim verdiğim kod'da, üstü örtülü olarak (ListIndex üzerinden işlem yapıldığından);
A sütunundaki ürün cinsiyle bunlara ait sütun başlıklarının aynı sırada olması varsayılmıştı.
Bu hususa dikkat çekmişsiniz, sağ olunuz.

Ancak, verdiğiniz kodlara göre; form, ilgili sayfadaki düğmeyle çağrılırsa veya
ilgili sütun adı örneğin Z sütunundan sonraki bir sütunsa sorun yaşanabilir diye düşünüyorum.
.
 
Merhaba,

Alternatif olarak kullanılabilir. Biraz Murat'ın koduna benziyor ama :)

Kod:
Private Sub ComboBox1_Change()
deg = ComboBox1.Value
sutun = WorksheetFunction.Match(deg, Rows("1:1"), 0)
say = WorksheetFunction.CountA(Columns(sutun))

ComboBox2.RowSource = Range(Cells(2, sutun).Address & ":" & Cells(say, sutun).Address).Address
End Sub
 
Ömer Bey, sizin mesajınızı geç gördüğüm için sadece alternatif sunmak istedim.
Hücre adresi kısmında Split fonksiyonu ile $ işareti baz alınarak Z den sonrası için de kolaylıkla çözüm bulunabilir.
İlgili sayfadaki düğme ile çağrılırsa hata verir kısmında da tabii ki haklısınız, ama unutmayalım ki; sayfa isminde tek bir harf değiştirildiğinde sizin kodlarınız da çalışmayacaktır.

Saygılar
 
Geri
Üst