• DİKKAT

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

Bir hücreye veri girildiğinde otomatik süzme

Katılım
26 Mart 2012
Mesajlar
253
Excel Vers. ve Dili
MİCROSOFT EXCELL OFFİCE 2007
Merhabalar. örnek dosyada açıkladığım gibi bir hücreye veri giriyorum ve o hücrenin üzerindeki verilerin girilen bilgiye göre otomatik gelmesini istiyorum. Bu mümkün mü acaba.
 
Bana bir yardımcı olun lütfen arkadaşlar
 
cevabınız için teşekkür ederim ama veriyi tam yazdığımda geliyor süzme işlemi. oysaki ben verinin bir kısmını girdiğimde gelsin istiyorum ve benim girdiğim hücre en altta süzülecek veriler ise üstte
 
Merhaba,

Sayısal veri alanlarına uygulanan filtre işleminde verileri tam olarak girme zorunluluğu vardır.

İçerir mantığı ile arama yapabilmeniz için ilgili alanı METİN olarak biçimlendirmeniz gerekir.

İçerir mantığı ile arama işlemi için aşağıdaki yapıyı kullanabilirsiniz.

Kod:
Criteria1:= "*" & TextBox1.Value & "*"
 
Sayın Korhan Bey. Göndermiş olduğum dosya için acaba bir kod var mıdır. Bana yardımcı olur musunuz.
 
Merhaba,

Tabi ki dosyanıza göre kodları düzenleyebiliriz. Fakat sayısal alanları metne çevirmek gerekiyor. Bu benim için sorun olmaz derseniz aşağıdaki kodları deneyebilirsiniz.

Sayısal sütunlar metne çevrildiği için veri sayınız arttıkça kodlar yavaş çalışacaktır.

Eski kodları silip aşağıdaki kodları uygulayın.

ÖRNEK DOSYA


Kod:
Private Sub CommandButton1_Click()
    TextBox1 = ""
    TextBox2 = ""
    TextBox3 = ""
    TextBox4 = ""
    TextBox5 = ""
    TextBox6 = ""
End Sub

Private Sub TextBox1_Change()
    On Error Resume Next
    Range("B3:B" & Rows.Count).NumberFormat = "@"
    For X = 3 To Cells(Rows.Count, 2).End(3).Row
        Cells(X, 2) = CStr(Cells(X, 2))
    Next
    If TextBox1 = "" Then
        Range("A2").AutoFilter Field:=2
    Else
        Range("A2").AutoFilter Field:=2, Criteria1:="*" & TextBox1.Value & "*"
    End If
End Sub

Private Sub TextBox2_Change()
    On Error Resume Next
    If TextBox2 = "" Then
        Range("A2").AutoFilter Field:=3
    Else
        Range("A2").AutoFilter Field:=3, Criteria1:="*" & TextBox2.Value & "*"
    End If
End Sub

Private Sub TextBox3_Change()
    On Error Resume Next
    If TextBox3 = "" Then
        Range("A2").AutoFilter Field:=4
    Else
        Range("A2").AutoFilter Field:=4, Criteria1:="*" & TextBox3.Value & "*"
    End If
End Sub

Private Sub TextBox4_Change()
    On Error Resume Next
    If TextBox4 = "" Then
        Range("A2").AutoFilter Field:=5
    Else
        Range("A2").AutoFilter Field:=5, Criteria1:="*" & TextBox4.Value & "*"
    End If
End Sub

Private Sub TextBox5_Change()
    On Error Resume Next
    Range("F3:F" & Rows.Count).NumberFormat = "@"
    For X = 3 To Cells(Rows.Count, 6).End(3).Row
        Cells(X, 6) = CStr(Format(Cells(X, 6), "dd.mm.yyyy"))
    Next
    If TextBox5 = "" Then
        Range("A2").AutoFilter Field:=6
    Else
        Range("A2").AutoFilter Field:=6, Criteria1:="*" & TextBox5.Value & "*"
    End If
End Sub

Private Sub TextBox6_Change()
    On Error Resume Next
    If TextBox6 = "" Then
        Range("A2").AutoFilter Field:=7
    Else
        Range("A2").AutoFilter Field:=7, Criteria1:="*" & TextBox6.Value & "*"
    End If
End Sub
 

Ekli dosyalar

Tşk ederim korhan bey. Benim ilk gönderdiğim excel örneğinde bunu nasıl uygularız bir de ben hücre içine veri girdikçe yukarıdaki aynı olan verilerin süzülmesini istiyorum ama. Böylelikle daha önce ödediklerim listelenecek ona göre mükerrer ödeme yapmak istemiyorum. Mükerrer değilse veri girdiğim hücreye devam etmek istiyorum. Tabi bir başka ödemede ise bir alt satıra yazacağım. Oraya veri girdiğimde de gene yukarıdakiler sıralanacak. Zor olsa gerek. Ama bu benim çok işime yarayacak gerçekten.
 
Merhaba,

Kısıtlamalardan dolayı verdiğiniz linki açamıyorum.

Şu siteye yükleme yapabilir misiniz?

http://dosya.co/
 
Lütfen biraz sabırlı olun.

Her zaman müsait olamıyoruz.

Dosyanızla ilgileniyorum.
 
Geri
Üst