• DİKKAT

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

Soru iki tarih arası koşullu veri çekme

Sy. @tamer42 ;
Hocam teşekkür ederim. Elinize sağlık. Allah razı olsun.
 
Alternatif;

Hız olarak oldukça avantaj sağlayacaktır.

C++:
Option Explicit

Sub Report()
    Dim My_Connection As Object, My_Query As String, My_Recordset As Object
    Dim S1 As Worksheet, First_Date As Variant, Last_Date As Variant, Account_Name As String
   
    Application.ScreenUpdating = False
   
    Set My_Connection = CreateObject("AdoDB.Connection")
    Set S1 = Sheets("onur")
    
    First_Date = CLng(S1.Range("K1"))
    Last_Date = CLng(S1.Range("N1"))
    Account_Name = S1.Range("J2")
    
    S1.Range("J4:M" & S1.Rows.Count).ClearContents
    
    My_Connection.Open "Provider=Microsoft.Ace.OleDb.12.0;Data Source=" & _
    ThisWorkbook.FullName & ";Extended Properties=""Excel 12.0;Hdr=Yes"""
   
    My_Query = "Select [Fiş Tarihi],[Ek Açıklama],[Borçlu],[Alacaklı] From [Muavin$] " & _
               "Where [Fiş Tarihi] Between " & First_Date & " And " & Last_Date & " And [Hesap Adı] = '" & Account_Name & "'"
   
    Set My_Recordset = My_Connection.Execute(My_Query)
   
    S1.Range("J4").CopyFromRecordset My_Recordset
   
    If My_Recordset.State <> 0 Then My_Recordset.Close
    If My_Connection.State <> 0 Then My_Connection.Close
   
    Set S1 = Nothing
    Set My_Recordset = Nothing
    Set My_Connection = Nothing
   
    Application.ScreenUpdating = True
   
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
Sy. @Korhan Ayhan ;

Hocam Elinize sağlık sizden bir şey rica edebilir miyim. size zahmet olmazsa diğer sayfalara da uygulamam lazım bütün sayfalar veriyi MUAVİN sayfasından alacak genel de mantık hep aynı çalışacak. başlangıç tarih , bitiş tarih , cari sonra da altına listeleme yapacak. bunun için kodları açıklar mısınız. yada acemi birisi için uzun da olsa anlaşılır bir kod yazar mısınız. size zahmet olmazsa teşekkür ederim.
 
Önerdiğim kod içinde aşağıdaki satırı bir sonraki satır gibi düzenlerseniz her sayfada kullanabilirsiniz.

Eski Hali;
Set S1 = Sheets("onur")

Yeni Hali;
Set S1 = ActiveSheet

Sonrasında her sayfanıza buton ekleyip kodu atayarak kullanabilirsiniz.
 
Sy. @Korhan Ayhan ;
Hocam Çok teşekkür ederim. Allah razı olsun . elinize sağlık.
 
Geri
Üst