Soru Döngü Kuramadım yardımcı olur musunuz

ruhadam26

Altın Üye
Katılım
4 Aralık 2017
Mesajlar
116
Excel Vers. ve Dili
2010-2016 türkçe
Altın Üyelik Bitiş Tarihi
20-12-2025
#
deger2 = TextBox71.Value
Select Case ComboBox2.Value
Case "Proje Adı"
For sat2 = 2 To Cells(65536, "b").End(xlUp).Row
Set deger1 = Cells(sat2, "b")
If UCase(deger1) Like UCase(deger2) & "*" Then
ListBox2.AddItem
ListBox2.List(s, 1) = Cells(sat2, "B")
ListBox2.List(s, 2) = Cells(sat2, "C")
ListBox2.List(s, 3) = Cells(sat2, "D")
ListBox2.List(s, 4) = Cells(sat2, "E")
ListBox2.List(s, 5) = Cells(sat2, "F")
ListBox2.List(s, 6) = Cells(sat2, "G")
ListBox2.List(s, 7) = Cells(sat2, "H")
ListBox2.List(s, 8) = Cells(sat2, "I")
ListBox2.List(s, 9) = Cells(sat2, "J")
ListBox2.List(s, 10) = Cells(sat2, "K")
ListBox2.List(s, 11) = Cells(sat2, "L")
ListBox2.List(s, 12) = Cells(sat2, "M")
ListBox2.List(s, 13) = Cells(sat2, "N")
ListBox2.List(s, 14) = Cells(sat2, "O")
ListBox2.List(s, 15) = Cells(sat2, "P")
ListBox2.List(s, 16) = Cells(sat2, "Q")
ListBox2.List(s, 17) = Cells(sat2, "R")
ListBox2.List(s, 18) = Cells(sat2, "S")
ListBox2.List(s, 19) = Cells(sat2, "T")
ListBox2.List(s, 20) = Cells(sat2, "U")
ListBox2.List(s, 21) = Cells(sat2, "V")
ListBox2.List(s, 22) = Cells(sat2, "W")
ListBox2.List(s, 23) = Cells(sat2, "Y")
ListBox2.List(s, 24) = Cells(sat2, "Z")
ListBox2.List(s, 25) = Cells(sat2, "AA")
ListBox2.List(s, 26) = Cells(sat2, "AB")
'......
.
.
ListBox2.List(s, 103) = Cells(sat2, "CY")
s = s + 1
End If: Next

End Select
#
bu kodlarla bir çalışmam var CY sutununa kadar yazmam gerekecek ki bir döngü lazım. ama o döngüyü bir türlü kuramadım yardımcı olursanız işimi büyük ölçüde kolay kılacak. çÜnkü bu kodlar bir seçim bunun gibi 4 seçim daha var. birisi olursa diğerlerini halledebilir. Şimdiden teşekkürler
 

ruhadam26

Altın Üye
Katılım
4 Aralık 2017
Mesajlar
116
Excel Vers. ve Dili
2010-2016 türkçe
Altın Üyelik Bitiş Tarihi
20-12-2025
http://dosya.co/13waat9qtwt9/GPON_PROJE_TAKİP_V8.xls.html

Command Button_22 nin click olayında gerçekleşmesi isteniyor. Daha açıklayıcı olması için örnek dosyayıda ekledim. Daha doğrusu benim istediğim şey listbox üzerinde arama yapmak ve bu aramyıda belli başlı filtrelerde bunlarıda comboboxtan seçip öyle aratmak istiyorum. daha farklı şekildede oluyorsa tekliflere açığım. bina sayfasının b,c,d,e sutunlarına göre 4 farklı arama filtrem olacak. bir benzeri kablo sayfasında page1 de var ama page 2 nin sutun sayısı fazla oldugu için döngü lazım lakin pek beceremdim. henüz yeniyim vba konusunda
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
13,002
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba.

Örnek belgenizi incelemedim ama yanlış anlamıyorsam; ListBox2.AddItem satırından sonra aşağıdaki gibi yeni bir döngü ile istediğiniz sonuç alınır.
For k = 1 To 102
ListBox2.List(s, k) = Cells(sat2, k + 1)
Next
Aslında pratik olarak, tek tek döngü kullanarak Listbox'a veri aktarmak yerine, yeni bir sayfa oluşturup, koşullara göre veri alanına filtre uygulayıp oradan da koşullara uyan satırları bu yeni sayfaya alarak,
oradan da ListBox.RowSource yöntemiyle verileri topluca Listbox'a almak da düşünülebilir.
Veri alanındaki satır sayısı fazla olduğunda (zaten sütun sayınız da yeterince kalabalık) For..Next döngüsü yavaş çalışacaktır.
 

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
Additem metodu ile en fazla 10 sütun veri alabilirsiniz.Ömer BARAN beyin önerdiği şekilde çözüm bulabilirsiniz.:cool:
 

ruhadam26

Altın Üye
Katılım
4 Aralık 2017
Mesajlar
116
Excel Vers. ve Dili
2010-2016 türkçe
Altın Üyelik Bitiş Tarihi
20-12-2025
Ömer Bey dediğiniz yöntemi bilmiyorum. Nasıl yapacağım konusunda yardımcı olursanız.Evren bey sizinde yardımlarınızı bekliyorum bu hususta dosyayı yüklemiştim zaten.
 

mancubus

Destek Ekibi
Destek Ekibi
Katılım
6 Ocak 2010
Mesajlar
2,224
Excel Vers. ve Dili
İŞ: 2021 Win Eng
Kod:
    With ListBox1
        .Clear
        .ColumnCount = Worksheets("Sheet1").Range("B2:CY2").Columns.Count
        .List = Application.Transpose(Worksheets("Sheet1").Range("B2:CY2").Value) 'satır -> listbox
    End With
diğer hususları dikkate almadan kendi tercih ettiğim yöntemi ekledim..
uyarlama yapmak gerekir muhtemelen.
 

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
Süzdükten sonra boş bir sayfaya atıp,oradanda aşağıdaki yöntemlede veri alabilirsiniz.
Diyelim ki süzülenlerin atıldığı sayfa adı suz olsun.
Kod:
listbox2.List = Worksheets("suz").Range("B2:CY" & sheets("suz").cells(rows.count,"B").end(xlup).row).Value
 

ruhadam26

Altın Üye
Katılım
4 Aralık 2017
Mesajlar
116
Excel Vers. ve Dili
2010-2016 türkçe
Altın Üyelik Bitiş Tarihi
20-12-2025
Teşekkür ederim hocalarım problemi sayenizde çözdüm. İleri ki zamanlarda başka sorularda görüşmek üzere..
 

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
Teşekkür ederim hocalarım problemi sayenizde çözdüm. İleri ki zamanlarda başka sorularda görüşmek üzere..
Rica ederim.
İyi çalışmalar.:cool:
 

ruhadam26

Altın Üye
Katılım
4 Aralık 2017
Mesajlar
116
Excel Vers. ve Dili
2010-2016 türkçe
Altın Üyelik Bitiş Tarihi
20-12-2025
Evren Hocam, Örneğin 100 adet aratacağım bir numara var. Bu numaralar Çalışma Kitabımdaki sayfalarda (7 sayfada dağıtılmış şekilde).Bu numaraların aratılıp her sayfadan toplu şekilde silmesini sağlayan bir makroya ihtiyacım var. Silinecek dosyaları form üzerinden bir combobox tarzı bir yere girerek elde edersek harika olur. Bu işte yeni olduğumdan anlattığım şeyi yapamadım. Yardımlarınızı bekliyorum.
 

Ekli dosyalar

Üst