combo1 seçiminde benzer olanların tek görünmesi

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Katılım
9 Mart 2007
Mesajlar
85
Excel Vers. ve Dili
xp
boş satırların görünmemesi ve 1 den seçim yapılınca combo2 nin 1 e bağlı olarak çalışması için ne yapılabilir
 
Son düzenleme:
Katılım
25 Nisan 2007
Mesajlar
459
Excel Vers. ve Dili
2007
combobox1.rowsource yerine aşağıdaki kodu yazarsanız, sadece benzersizleri comboboxa ekler.

Kod:
For n = 2 To [d20000].End(3).Row
If Columns(4).Find(Cells(n, "d")).Row = n And Trim(Columns(4).Find(Cells(n, "d"))) > "" Then
ComboBox1.AddItem Cells(n, "d")
End If
Next
 
Katılım
9 Mart 2007
Mesajlar
85
Excel Vers. ve Dili
xp
comboboxların birileri arasındaki bağ ile ilgili ne yapılabilir
 
Katılım
25 Nisan 2007
Mesajlar
459
Excel Vers. ve Dili
2007
Aşağıdaki kod combobox2'ye combobox1'e uyan kayıtları ekler.
Kod:
ComboBox2.Clear
    
    If ComboBox1.ListIndex >= 0 Then
        For n = 2 To [d2000].End(3).Row
        
            If Cells(n, "d") = ComboBox1.Text Then
            
                If ComboBox2.ListCount > 0 Then
                    
                    eslestir = 0
                    
                    For xx = 0 To ComboBox2.ListCount - 1
                    If Cells(n, "e") = ComboBox2.List(xx) Then eslestir = 1
                    Next xx
                    
                    If eslestir = 0 Then ComboBox2.AddItem Cells(n, "e")
                
                Else
                
                ComboBox2.AddItem Cells(n, "e")
                
                End If
                
            End If
        
        Next
    End If
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Alternatif,

Combobox1'e verileri tekrarsız yüklemek için aşağıdaki kodu userformun_initialize olayına yazın ve bu olaya yazılı olan combobox1.rowsource ile başlayan satırı silin.

Kod:
For a = 2 To [a65536].End(3).Row
If WorksheetFunction.CountIf(Range("d2:d" & a), Cells(a, "d")) = 1 Then ComboBox1.AddItem Cells(a, "d")
Next
Comboboxtan seçilen göre modelin combobox2'ye tekrarsız olarak yüklenmesi içinde aşağıdaki kodu combobox1'deki kodların en altına ilave edin.

Kod:
ComboBox2.Clear
For a = 2 To [a65536].End(3).Row
deg = Evaluate("=SUMPRODUCT((D2:D" & a & "=""" & ComboBox1 & """)*(E2:E" & a & "=""" & Cells(a, "e") & """))")
If Cells(a, "d") = ComboBox1 And Cells(a, "e") <> "" And deg = 1 Then ComboBox2.AddItem Cells(a, "e")
Next
 
Katılım
9 Mart 2007
Mesajlar
85
Excel Vers. ve Dili
xp
combo 2 den herhangi birini seçince 1 ile bağlantısız olan
seçenekleride listeliyor.Örneğin cam 1 no lu boxtan seçince 2 den buzlu seçince poşet buzlularda listeleniyor.????????????
 
Katılım
25 Nisan 2007
Mesajlar
459
Excel Vers. ve Dili
2007
combo 2 den herhangi birini seçince 1 ile bağlantısız olan
seçenekleride listeliyor.Örneğin cam 1 no lu boxtan seçince 2 den buzlu seçince poşet buzlularda listeleniyor.????????????
Yukarıda incelerseniz zaten istediğinize duyarlı tanımlamıştım.
 
Katılım
9 Mart 2007
Mesajlar
85
Excel Vers. ve Dili
xp
sn xxcell combo1 den poşet seçip combo 2 den buzlu yu seçince listboxa cam ve buzlu larda listeleniyor acaba kodları yanlış mı uyguluyorum çözemedim
yukarıdaki seçimlerden sonra sadece poşet buzlu ların listelenmesini için ne yapılabilir
userform initailize a uygulanan
For n = 2 To [d20000].End(3).Row
If Columns(4).Find(Cells(n, "d")).Row = n And Trim(Columns(4).Find(Cells(n, "d"))) > "" Then
ComboBox1.AddItem Cells(n, "d")
End If
Next

combobox1 change en alt satıra
ComboBox2.Clear
If ComboBox1.ListIndex >= 0 Then
For n = 2 To [d2000].End(3).Row
If Cells(n, "d") = ComboBox1.Text Then
If ComboBox2.ListCount > 0 Then
eslestir = 0
For xx = 0 To ComboBox2.ListCount - 1
If Cells(n, "e") = ComboBox2.List(xx) Then eslestir = 1
Next xx
If eslestir = 0 Then ComboBox2.AddItem Cells(n, "e")
Else
ComboBox2.AddItem Cells(n, "e")
End If
End If
Next
End If
dogrumudur?
 
Son düzenleme:
Katılım
25 Nisan 2007
Mesajlar
459
Excel Vers. ve Dili
2007
Şu ara çok yoğun olduğum için mesajlarımla ilgilenemedim.

Örnek dosya ile cevap vermeyi fazla sevmiyorum çünkü;
hazır birşey sunarsan birşey öğretmiş olmadığımı düşünüyorum.
Eğer verilen kodu incelersen sorunları tekrar karşılaştığında kendin
halledebileceğin kanaatindeyim.

Neyse, konumuza dönelim.


Öncelikle combobox2'nin içeriğinin combobox1'e göre değişme işlemini yapmıştık. Şu noktada takılmışsın.

combo1 den poşet seçip combo 2 den buzlu yu seçince listboxa cam ve buzlu larda listeleniyor
İnan sorunun senin çok rahat çözebileceğin kadar basit. Dosyanı incelediğimde,
combobox2 'nin change olayına, combobox2 ye göre otomatik süz kodu yazmışsın.

Yukarıdaki sorundada açıkçana belirttiğin gibi combobox1'e görede süzme yapman gerekirdi. Sen sadece combo2 leri süz dediğin için böyle tepki veriyor.

dosyan ektedir.
 
Katılım
9 Mart 2007
Mesajlar
85
Excel Vers. ve Dili
xp
combobox1 drop buttondan açtığımızda comboliste alfabetik sıra uygulanabilir mi DOSYA EKTE
 
Son düzenleme:
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst