Tarihe göre veri çekme ve sıralama

Turgay KARAŞAH

Altın Üye
Katılım
21 Mayıs 2009
Mesajlar
94
Excel Vers. ve Dili
Microsoft Office LTSC Pref. Plus 2021
Altın Üyelik Bitiş Tarihi
27-02-2029
Öncelikle üye arkadaşlara sevgi saygılar. Kod yazılımında hiç anlamıyorum. Yusuf44 kardeşimin geçenlerde yazmış olduğu kodu uyarlamak istedim fakat yapamadım. Yapmak isteğim ve yapamadığım konu şu; A1 hücresine yazdığım tarih Örneğin; NİSAN 20 , MART 19 veya OCAK 18 yazdığımda BAĞLAMA KÜTÜĞÜ sayfasında "S" sütununda ki A1 hücre kriterinde olan tarihleri doğru sıralasın. (Kodsuz olur ise daha makbule geçer).Teşekkürler.
 

Ekli dosyalar

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Listeleme sayfasında A1 hücresinde her ne kadar Ocak 20 yazıyor olsa da ordaki değer 01.01.2020'dir ve bunu formül çubuğunda görebilirsiniz. Yapmak istediğiniz tüm Ocak 2020 olanları mı listelemek yoksa 01/01/2020 olanları mı listelemek?
 

Turgay KARAŞAH

Altın Üye
Katılım
21 Mayıs 2009
Mesajlar
94
Excel Vers. ve Dili
Microsoft Office LTSC Pref. Plus 2021
Altın Üyelik Bitiş Tarihi
27-02-2029
İlgilendiğiniz için tekrar teşekkür ederim. Evet Yusuf bey tüm OCAK 20 vaya Mayıs 20 vb.
 

Turgay KARAŞAH

Altın Üye
Katılım
21 Mayıs 2009
Mesajlar
94
Excel Vers. ve Dili
Microsoft Office LTSC Pref. Plus 2021
Altın Üyelik Bitiş Tarihi
27-02-2029
Bu arada eski kodunuzda sutun "s" olarak değiştirdim, hücre biçimlerdirde tarih "Haziran 20" yaptım. Sonuç başarısız oldu
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Aşağıdaki kodu deneyin:

PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A1]) Is Nothing Then Exit Sub
Set s1 = Sheets("BAĞLAMA KÜTÜĞÜ")
eski = WorksheetFunction.Max(3, Cells(Rows.Count, "S").End(3).Row)
son = WorksheetFunction.Max(7, s1.Cells(Rows.Count, "S").End(3).Row)

If Selection.Count > 1 Then Exit Sub

If Target = "" Then
    Range("A3:X" & eski).ClearContents
    Target.Select
    Exit Sub
Else
    Range("A3:X" & eski).ClearContents
    Set con = VBA.CreateObject("adodb.Connection")
    
    con.Open "provider=microsoft.ace.oledb.12.0;data source=" & _
    ThisWorkbook.FullName & ";extended properties=""Excel 12.0;hdr=NO"""
    
    sorgu = "select F1,F2,F3,F4,F5,F6,F7,F8,F9,F10,F11,F12,F13,F14,F15,F16,F17,F18,F19,F20,F21,F22,F23,F24 " & _
      "from[BAĞLAMA KÜTÜĞÜ$] where year(F19) = " & Year(Target) & " and month(F19) = " & Month(Target)
      
    Set rs = con.Execute(sorgu)
    Range("A3").CopyFromRecordset rs
End If
If [S3] = "" Then
    MsgBox "Bağlama Kütüğü sayfasında aranan tarih bulunamadı", vbCritical
End If
End Sub
 

Turgay KARAŞAH

Altın Üye
Katılım
21 Mayıs 2009
Mesajlar
94
Excel Vers. ve Dili
Microsoft Office LTSC Pref. Plus 2021
Altın Üyelik Bitiş Tarihi
27-02-2029

Turgay KARAŞAH

Altın Üye
Katılım
21 Mayıs 2009
Mesajlar
94
Excel Vers. ve Dili
Microsoft Office LTSC Pref. Plus 2021
Altın Üyelik Bitiş Tarihi
27-02-2029
Üstadım kodu esas dosya sayfasına kopyaladım. sonuç bu veri gelmedi. Zahmet verdim.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Örnek dosyanızda hata vermiyor, dosyayı hatalı haliyle görmeden bir şey diyemem.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Bağlama kütüğü sayfasında bazı hücrelerdeki tarihler hatalı. Örneğin 29/02/2021, 16..01 gibi tarihler var. o tarihleri düzeltin. Hatalı olan tarihleri görmek için o sütunda filtre uygulayıp filtre menüsünü açtığınızda listenin en altında yıllara ayrılmamış tarihler ve boş tarihler olarak göreceksiniz. Hatalı tarihleri düzeltin ve boş tarihleri doldurun. Boş olan hücrenin satırı gereksizse silin. ayrıca S sütununda ilk 5 satırda metinsel ifadeler var, onları da silin.

Aslında excel mantığında bağlama Kütüğü sayfasındaki ilk 5 sayfanın olmaması, birinci satırın başlıklar olup, altındakilerin de düzenli bir veritabanı olması daha doğru olur. Mümkünse tablonuzu bu hale dönüştürmenizi tavsiye ederim.
 

Turgay KARAŞAH

Altın Üye
Katılım
21 Mayıs 2009
Mesajlar
94
Excel Vers. ve Dili
Microsoft Office LTSC Pref. Plus 2021
Altın Üyelik Bitiş Tarihi
27-02-2029
Yusuf kardeş verdiğiniz emekten dolayı tekrar tekrar sonsuz teşekkürlerimi sunarım. Ailenizle ömür boyu sağlıklı günleriniz olsun. Bu arada siz mesaj atmadan önce sorunu şöyle çözdüm. Öncelikle kod dan anlamam, kod da sorun yok. ŞÖYLE ÇÖZDÜM; Veri çekeceğim sayfa ile kod sayfanının tarih sütunlarını HÜCRE BİÇİMLENDİR den Tarih sekmesinde Mart 12 seçtim veriler geldi. Daha sonra bu tarih sütunlarını yine Hücre biçimlendir den tarih 14.03.12 seçtim ve gayet iyi çalışıyor. Hoşça kalın.
 
Üst