• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

3 kriterli filtreleme

yanginci34

Altın Üye
Katılım
6 Temmuz 2010
Mesajlar
1,673
Excel Vers. ve Dili
excel2016
Merhaba arkadaşlar benim bir yardıma ihtiyacım var şöyle ki! Demirbaş Döküm Modülümde 3 adet combobox a göre listbox u filtreleme yapmak ve listboxun bu halini filtre sayfasına kayıt etmesini istiyorum. Yalnız bu 3 adet combobox illa dolu olması gerekmiyor. Yani 2 kritere veya 1 kritere görede filitreleme yapabilsin. Teşekkür ederim.
Ekli dosyayı görüntüle FİLTRE ÖRNEK.xlsm
 
Merhaba.

UserForm1'in kod bölümünün en üstündeki Option Explicit satırını silin veya sol başına TEK TIRNAK ekleyin.

Ardından da UserForm1'e ait mevcut kodların tümünü silin ve yerine aşağıdaki kodları yapıştırın.
.
Kod:
[B]Private Sub CommandButton1_Click()[/B]
Set Dbaş = Sheets("DEMİR_BAŞ")
Set filtre = Sheets("filitre")
filtre.Range("A1:I" & filtre.Cells(Rows.Count, 1).End(3).Row).ClearContents
son = Dbaş.Cells(Rows.Count, 1).End(3).Row
If ComboBox1 <> "" Then Dbaş.Range("A3:I" & son).AutoFilter Field:=7, Criteria1:=ComboBox1.Text
If ComboBox2 <> "" Then Dbaş.Range("A3:I" & son).AutoFilter Field:=5, Criteria1:=ComboBox2.Text
If ComboBox3 <> "" Then Dbaş.Range("A3:I" & son).AutoFilter Field:=2, Criteria1:=ComboBox3.Text
Dbaş.Range("A3:I" & Dbaş.Cells(Rows.Count, 1).End(3).Row).SpecialCells(xlCellTypeVisible).Copy filtre.[A1]
Dbaş.Range("A3:I" & Dbaş.Cells(Rows.Count, 1).End(3).Row).AutoFilter
ListBox1.RowSource = "filitre!A1:I" & filtre.Cells(Rows.Count, 1).End(3).Row
[B]End Sub[/B]

[B]Private Sub UserForm_Initialize()[/B]
son = Sheets("DEMİR_BAŞ").Cells(Rows.Count, 1).End(3).Row
ComboBox1.RowSource = "DEMİR_BAŞ!G4:G" & son
ComboBox2.RowSource = "DEMİR_BAŞ!E4:E" & son
ComboBox3.RowSource = "DEMİR_BAŞ!B4:B" & son
ListBox1.ColumnCount = 9
    ListBox1.ColumnWidths = "50;70;170;90;95;100;100;50;50"
    ListBox1.RowSource = "'" & Sayfa2.Name & "'!A2:I" & Sayfa2.Cells(Rows.Count, 1).End(xlUp).Row
[B]End Sub[/B]
 
Ömer Hocam çok teşekkür ederim elinize sağlık iyi akşamlar.
 
Geri
Üst