Soru For Each; iki koşula bağlı listeleme.

Hakan ERDOST

Destek Ekibi
Destek Ekibi
Katılım
12 Eylül 2004
Mesajlar
871
Excel Vers. ve Dili
Excel 2019 Türkçe (Ev)
Excel 2013 Türkçe (Okul)
Kod:
Private Sub ComboBox3_Change()
 With ListBox2
        .RowSource = Empty
        .Clear
    For Each BUL In Worksheets("Kazanim_Takip").Range("b2:D" & Worksheets("Kazanim_Takip").Range("b65536").End(3).Row)
        If BUL = ComboBox3 Then
            
            ListBox2.AddItem
            ListBox2.List(ListBox2.ListCount - 1, 0) = BUL.Offset(0, -3)
            ListBox2.List(ListBox2.ListCount - 1, 1) = BUL.Offset(0, -2)
            ListBox2.List(ListBox2.ListCount - 1, 2) = BUL.Offset(0, -1)
            ListBox2.List(ListBox2.ListCount - 1, 3) = BUL
            ListBox2.List(ListBox2.ListCount - 1, 4) = BUL.Offset(0, 1)
            ListBox2.List(ListBox2.ListCount - 1, 5) = BUL.Offset(0, 2)
            ListBox2.List(ListBox2.ListCount - 1, 6) = BUL.Offset(0, 3)
            ListBox2.List(ListBox2.ListCount - 1, 7) = BUL.Offset(0, 4)
            
    End If
    Next
 
    End With

End Sub
Merhaba. For each döngüsüne ikinci bir combobox daha ilave etmek istiyorum. İki koşul sağlandığında addıtem çalışsın ve listelesin. Nasıl ilave yapacağımı çözemedim.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Sanırım şu satırdan bahsediyorsunuz.
Kod:
If BUL = ComboBox3 Then
Aşağıdaki gibi yapabilirsiniz.

Kod:
If BUL = ComboBox3 and bul=combobox4 Then
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
If BUL = ComboBox3 And BULDUM=ComboBox4 Then
gibi
 

Hakan ERDOST

Destek Ekibi
Destek Ekibi
Katılım
12 Eylül 2004
Mesajlar
871
Excel Vers. ve Dili
Excel 2019 Türkçe (Ev)
Excel 2013 Türkçe (Okul)
If BUL = ComboBox3 And BULDUM=ComboBox4 Then
gibi
Teşekkürler arkadaşlar. O yöntemleri de denemiştim ancak sonuç alamamıştım. Fakat sorunu aşağıdaki kodlama ile çözdüm, belki işine yarayan olur diye ekliyorum.
Kod:
Private Sub ComboBox3_Change()

        ListBox2.Clear
    For Each BUL In Worksheets("Kazanim_Takip").Range("b2:b" & Worksheets("Kazanim_Takip").Range("b65536").End(3).Row)
        If BUL = ComboBox2.Value Then
        If BUL.Offset(0, 2).Value = ComboBox3.Value Then
        
         With ListBox2
        .AddItem BUL.Value 'column 1
                    .List(.ListCount - 1, 0) = BUL.Offset(0, -1).Value 'column 2
                    .List(.ListCount - 1, 1) = BUL.Offset(0, 0).Value 'column 3
                    .List(.ListCount - 1, 2) = BUL.Offset(0, 1).Value 'column 4
                    .List(.ListCount - 1, 3) = BUL.Offset(0, 2).Value 'column 3
                    .List(.ListCount - 1, 4) = BUL.Offset(0, 3).Value 'column 4
                    .List(.ListCount - 1, 5) = BUL.Offset(0, 4).Value 'column 3
                    .List(.ListCount - 1, 6) = BUL.Offset(0, 5).Value 'column 4
                    .List(.ListCount - 1, 7) = BUL.Offset(0, 6).Value 'column 4
 
    End With
    End If
    End If
    Next

End Sub
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
C++:
If BUL = ComboBox2.Value Then
If BUL.Offset(0, 2).Value = ComboBox3.Value Then

' Yukarıdakilerle aşağıdaki satırın, yani size önerilenlerin hiç bir farkı yoktur'
' Tek fark  "End if" lerle beraber fazladan 2 satır daha yazıyor olmanızdır.'

If BUL = ComboBox2.Value And BUL.Offset(0, 2).Value = ComboBox3.Value Then
 
Üst