combobox ile listboxa süzme

Katılım
18 Aralık 2005
Mesajlar
464
Excel Vers. ve Dili
ofis2003
herkee iyi akşamlar...arkadaşlar daha önce benim için yapılmış kodları başka bir forma uyarlamaya çalıştım ancak ondakinden farklı çalışıyor.combolara sadece seçilen verinin benzersizlerini alması ve listboxa sümesi gerekiyor.kodlarımı kontrol edebilirmisiniz...
 

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
Dosyanızdaki verilerin önce A, sonra C ve sonrada D sütununa göre sıralı olmasının bir sakıncası varmı. Eğer yoksa kodlarda ciddi kısalma sağlanacağı gibi hızlıda çalışacaktır.

Yukarıdaki şekilde sıralı olması kaydı ile hazırladığım ekli dosyayı inceleyin.
 
Katılım
18 Aralık 2005
Mesajlar
464
Excel Vers. ve Dili
ofis2003
syn leventm bey dediğiniz şekilde olmasının hiçbir sakıncası yok hatta tam olarak olması gereken bu...kodları kısaltırsanız sevirim veri dosyam oldukça büyük olacak hızlandırırsanız sevinirim...ilginize teşekkür ederim.
 
Katılım
18 Aralık 2005
Mesajlar
464
Excel Vers. ve Dili
ofis2003
iyi akşamlar combo3 ten sonra veriler hatalı geliyor bu konuda yardımcı olabilirmisiniz...
 

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
Ben bir kaç deneme yaptım hata göremedim. Bir örnek verirmisiniz.
 
Katılım
18 Aralık 2005
Mesajlar
464
Excel Vers. ve Dili
ofis2003
ilk önce "4586000" numaralı kayıdı sonra üniteden "elektriği" ve sonra malzeme isminden "alternatör kayışını" seçtiğimde listboxa debriyaj balatası bilgileri geliyor alternetör kayışının stoğu olduğu halde texte gelmiyor.ayrıca diğer texte gelen parça numarası ise hatalı.... bu arada 4586000 numaralı kayıttan debriyajı seçtiğimizde combo3teki verilerin listboxa dökümleri ve textlere verilerin gelişi doğru oluyor....bu doğru işlem haricindekiler hatalı görünüyorlar
 

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
Haklısınız. Combobox3teki kodu aşağıdaki ile değiştirerek denermisiniz.

Kod:
Private Sub ComboBox3_Change()
On Error Resume Next
ListBox1.RowSource = ""
If ComboBox2 = "" Then
sat = ComboBox3.ListIndex + ilk
Else
sat = ComboBox3.ListIndex + ilk1
End If
ListBox1.RowSource = "ARAÇ_MALZEME_DATA!" & "a" & sat & ":L" & sat
TextBox2 = s1.Cells(sat, "h")
TextBox3 = s1.Cells(sat, "e")
End Sub
 
Katılım
9 Mart 2007
Mesajlar
85
Excel Vers. ve Dili
xp
plakaya seçim yanlış oldu diyelim delete bastığınızda
run time error 1004 unable to get the match property hatsaı veriyor.
 

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
combobox1deki kodun en üstüne "on error resume next" satırını ilave edin.
 
Katılım
18 Aralık 2005
Mesajlar
464
Excel Vers. ve Dili
ofis2003
on error resume next yazıncada excel kitlendi cevap vermedi...

combo1 kodunda burada hata veriyor ilk = WorksheetFunction.Match(deg, s1.[a:a], 0)
 

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
Combobox1deki kodu aşağıdaki ile değiştirin.

Kod:
Private Sub ComboBox1_Change()
ListBox1.RowSource = ""
ComboBox2.Clear
ComboBox3.Clear
TextBox1 = ""
deg = ComboBox1
If ComboBox1 = "" Then Exit Sub
If IsNumeric(ComboBox1) = True Then deg = CLng(ComboBox1)
ilk = WorksheetFunction.Match(deg, s1.[a:a], 0)
son = WorksheetFunction.CountIf(s1.[a:a], ComboBox1) + ilk - 1
adr = "a" & ilk & ":L" & son
ListBox1.RowSource = "ARAÇ_MALZEME_DATA!" & adr
For a = ilk To son
If WorksheetFunction.CountIf(Range("c" & ilk & ":c" & a), s1.Cells(a, "c")) = 1 Then ComboBox2.AddItem s1.Cells(a, "c")
If WorksheetFunction.CountIf(Range("d" & ilk & ":d" & a), s1.Cells(a, "d")) = 1 Then ComboBox3.AddItem s1.Cells(a, "d")
Next
sat = s1.[a1:a65536].Find(ComboBox1).Row
TextBox1 = s1.Cells(sat, "b")
End Sub
 
Katılım
18 Aralık 2005
Mesajlar
464
Excel Vers. ve Dili
ofis2003
tekrar çok teşekkürler leventm bey.syn yasef sizde sağolun.herkeze iyi akşamlar
 
Katılım
9 Mart 2007
Mesajlar
85
Excel Vers. ve Dili
xp
levent bey liste listboxta sürekli görünmesi ve süz yapınca aranılanların gelmesi combo biri silince listenin geri dönmesi mümkünmü
 
Katılım
9 Mart 2007
Mesajlar
85
Excel Vers. ve Dili
xp
asıl benim uygulamama uyarlamya çalışıyorum özür dilerim B sütunu combo1 ile ilişkilenip combo 2 C ile combo 3 ise H ile olması için ne yapmam gerekir.Ben textboxları devreden çıkardım.Bana 3 combo ve listbox lazımdı. sayfadaki sütun aralığım A:K yardım ederseniz sevinirim
 
Son düzenleme:

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
Bu şekilde netice alamaytız, kendi dosyanızı ekleyin.
 
Katılım
9 Mart 2007
Mesajlar
85
Excel Vers. ve Dili
xp
Combobox SÜz Ve Kopyalama Sorunu Detayini
Userform Üzerİne Yazdim İlgİlenenlere Şİmdİden TeŞekkÜrler.
 
Son düzenleme:
Üst