Çözüldü listbox.row source 23 sütunlu listbox ve combobox süzme

Katılım
24 Haziran 2017
Mesajlar
749
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
13-01-2024
userformda listbox 23 sütun olacağı için rowsource kodalayamadım. ayrıca listbox properties te de yazmama rağmen bir türlü beceremedim.

lütfen yardım sayın hocalarım
 

Ekli dosyalar

Katılım
24 Haziran 2017
Mesajlar
749
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
13-01-2024
@Orion1 hocam emeğine sağlık. ufak bir sorum olucak. combobox 7 için uyarladığımda c sütunundan uyarladığı için -1 yai b sütunundaki bilgiyi almıyor. yan önceki sütunlardan veri nasıl çekebilirim burda
 
Katılım
24 Haziran 2017
Mesajlar
749
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
13-01-2024
bayağı karışık bir kodlama. özür dileyerek soruyorum hocam ben sizin kadar usta biri değilim. farkındasınız. yani benim kodlamam daha uzun farkındasınız tabi. ancak öyle bişeyler anlıyorum bakınca. benim kodlamam üzerinde yapabilirmiyiz row source olayında.


yani bu kodlamaya row source ekleye bilirmiyiz.

ListBox2.ColumnCount = 6
ListBox2.ColumnWidths = "60;55;65;80;46;120"
'ListBox2.ColumnHeads = True
ListBox2.Clear
For Each isim In Sheets("KAYIT").Range("B2:B" & Sheets("KAYIT").Range("B65536").End(xlUp).Row)
If UCase(LCase(isim)) Like UCase(LCase(ComboBox6)) & "*" Then
'liste = ListBox1.ListCount
ListBox2.AddItem
ListBox2.List(x, 0) = isim.Offset(0, 0)
ListBox2.List(x, 1) = isim.Offset(0, 1)
ListBox2.List(x, 2) = isim.Offset(0, 2)
ListBox2.List(x, 3) = isim.Offset(0, 3)
ListBox2.List(x, 4) = isim.Offset(0, 4)
ListBox2.List(x, 5) = isim.Offset(0, 5)
ListBox2.List(x, 6) = isim.Offset(0, 6)
ListBox2.List(x, 7) = isim.Offset(0, 7)
ListBox2.List(x, 8) = isim.Offset(0, 8)
ListBox2.List(x, 9) = isim.Offset(0, 9)
ListBox2.List(x, 10) = isim.Offset(0, 10)
ListBox2.List(x, 11) = isim.Offset(0, 11)
ListBox2.List(x, 12) = isim.Offset(0, 12)
ListBox2.List(x, 13) = isim.Offset(0, 13)
ListBox2.List(x, 14) = isim.Offset(0, 14)
ListBox2.List(x, 15) = isim.Offset(0, 15)
ListBox2.List(x, 16) = isim.Offset(0, 16)
ListBox2.List(x, 17) = isim.Offset(0, 17)
ListBox2.List(x, 18) = isim.Offset(0, 18)
ListBox2.List(x, 19) = isim.Offset(0, 19)
ListBox2.List(x, 20) = isim.Offset(0, 20)
ListBox2.List(x, 21) = isim.Offset(0, 21)
ListBox2.List(x, 22) = isim.Offset(0, 22)

x = x + 1
End If
Next


en azından bende ezbercilik yerine uzunda olsa kodlamayı çözmüş olurum ve üzerinde istediğim değişikliği yapabilirim.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Verdiğiniz bu örnek le rowsource ile verileri alaamzsınız.Ben size en hızlı çalışan kodları yaptım.
Dizi formülü ilede yapabilirsiniz ama orada sayı ve tarih değerlerini alırken formatlamanız lazım.
Bu seferde sayfaya ,listboxta biçimlendirme yaptığınız için bir kerede alamazsınız.Alsanızda sonra tekrar düzenleme yapmanız lazım,yada tekrar listboxta döngüye girerek text olan sayıları sayıya çevirmeniz lazım.Ben size en iyi kodu yazdım.:cool:
 
Katılım
24 Haziran 2017
Mesajlar
749
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
13-01-2024
@Orion1 hocam gerçekten mükemmelini yapmışsınız ellerine ve emeklerinize sağlık. hakkınızı inkar edemem. lütfen beni yanlış anlamayın ben sizin kodlarınızı beğenmedim veya istemiyorum diye demiyorum. gerçekten acemi olduğum için kodları çözmekte zorlandım. yavaş yavaş öğrenmek istedim :))

peki hocam sizin verdiğiniz kodda eksi sütundaki veriyi nasıl uyarlarım. yani combobox D sütunundan süzme işlemi yaparken b sütunundan başlayarak nasıl bir değişim yapabilirim ? yani D sütunundan süzecek ama B sütunundan itibaren verileri alacak
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Combobox7 için kodları yazdım.
Kırmızı yerleri tekrar düzenledim.Comboboxta önce yazdığınız kodları silin.:cool:

Rich (BB code):
Private Sub ComboBox7_Change()

Dim sonsat As Long, s1 As Worksheet, s2 As Worksheet

ListBox2.RowSource = ""

Set s1 = Sheets("KAYIT")

Set s2 = Sheets("liste")

s2.Range("B:X").Clear

s1.Range("B1").AutoFilter

s1.Range("B1").AutoFilter field:=4, Criteria1:=ComboBox7.Value & "*"

s1.Range("B1").CurrentRegion.Copy s2.Range("A1")

sonsat = s2.Cells(Rows.Count, "B").End(xlUp).Row

ListBox2.RowSource = s2.Name & "!B2:X" & sonsat

s1.Range("B1").AutoFilter

End Sub[
 
Katılım
24 Haziran 2017
Mesajlar
749
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
13-01-2024
emeğinize sağlık hocam mesajı şimdi gördüm. hemen uyarlıyorum.
 
Katılım
24 Haziran 2017
Mesajlar
749
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
13-01-2024
@Orion1 hocam kırmızı alanda hata veriyor

Dim sonsat As Long, s1 As Worksheet, s2 As Worksheet

ListBox2.RowSource = ""

Set s1 = Sheets("KAYIT")

Set s2 = Sheets("liste")

s2.Range("B:X").Clear

s1.Range("B1").AutoFilter

s1.Range("B1").AutoFilter field:=4, Criteria1:=ComboBox7.Value & "*"

s1.Range("B1").CurrentRegion.Copy s2.Range("A1")

sonsat = s2.Cells(Rows.Count, "B").End(xlUp).Row

ListBox2.RowSource = s2.Name & "!B2:X" & sonsat

s1.Range("B1").AutoFilter

End Sub
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
liste diye bir sayfanız yok.Bir sayfa oluşturunuz ve adını liste yapınız.:cool:
 
Katılım
24 Haziran 2017
Mesajlar
749
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
13-01-2024
sorunu gğncel tutmak için tekrar yazıyorum. combobox 6 için rowsource işlem yapıyor ancak diğer comboboxlar için row source uygulayamıyorum. diğer comboboxlar süzme işlemi yaparken veriyi eksi(-) sütunlardan alması gerekiyor. comboboxlar üzerinde arama kreiteleri yazıyor. listboxta aranan veri a sütunundan itibaren gösterilmesi gerekli
 
Katılım
24 Haziran 2017
Mesajlar
749
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
13-01-2024
@Orion1 hocam işlev görüyor evet fakat doğru süzme işlemi yapmıyor. yani sizin dediğiniz gibi 4 rakamını yazdığımda e sütununa göre süzüyor oysaki birim sütununa yani D sütununa göre süzme yapıb b sünuyla x sütunu arasındaki verileri listboxa atması gerekli.

hocam çok oldum değil mi :(( affınıza sığınıyorum inanın
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Ama sizin combobox7 de E sütununda veriler var.
Dolayısıyla E sütununa göre süzme yapıyor.:cool:
 
Katılım
24 Haziran 2017
Mesajlar
749
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
13-01-2024
burdai değeri 3 bile yapsam genede e sütununa göre süzme yapıyor
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
field i 3 yaparsanız comboboxa 5 yazın bakın nasıl çözüyor.Ben denedim çalışıyor.:cool:
 
Katılım
24 Haziran 2017
Mesajlar
749
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
13-01-2024
allah allah bende neden olmuyor ya vallaha deliricem hocam :) farklı bir comboboxta da denedim olmuyor. combobox 7
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Bakın resme.

Adsız.jpg
 
Katılım
24 Haziran 2017
Mesajlar
749
Excel Vers. ve Dili
türkçe
Altın Üyelik Bitiş Tarihi
13-01-2024
hocam estafurlah size güvenim ve inancım sonsuzdur. da bendeki resme :(

1552212212384.png
 
Üst