Skip to main content

AccessTr.neT


Excel İstediğimiz Sayfanın İstediğimiz Sutundan Sıralı Filtreli Gruplanmış Liste

Excel İstediğimiz Sayfanın İstediğimiz Sutundan Sıralı Filtreli Gruplanmış Liste

#18
Mesela şu kodu incelemekle başlayalım

Kod:
Kod:
Private Sub UserForm_Initialize()
Dim SQL As String
Dim BasTarih As Long, BitTarih As Long
Dim VTSonSatir As Long
Dim ADO_RS As ADODB.Recordset
Dim ADO_CN As ADODB.Connection
Dim ToplamTutar As Double
'
ToplamTutar = 0
VTSonSatir = Sheets("DetayVeri").Cells(1048576, 8).End(xlUp).Row
BasTarih = Cells(1, Selection.Column)
BitTarih = Cells(2, Selection.Column)
SQL = "SELECT TARIH, NAKIT_AKIS_KODU, HESAP_KODU, HESAP_ADI, ACIKLAMA, Doviz_TL, Doviz_USD, Doviz_EURO "
SQL = SQL & vbCrLf
SQL = SQL & "FROM [DetayVeri$E10:AH" & VTSonSatir & "] "
SQL = SQL & vbCrLf
SQL = SQL & "WHERE SUBE_UNVAN = '" & Cells(Selection.Row, 11) & "' "
SQL = SQL & "AND RaporGrupKodu = '" & Cells(Selection.Row, 12) & "' "
SQL = SQL & "AND YilAyGun Between " & BasTarih & " AND " & BitTarih & " "
SQL = SQL & vbCrLf
SQL = SQL & "ORDER BY TARIH "
Cells(1, 1) = SQL
'
Set ADO_RS = New ADODB.Recordset

Set ADO_CN = New ADODB.Connection
ADO_CN.ConnectionString = "provider=Microsoft.ACE.OLEDB.12.0;data source=" & ThisWorkbook.FullName & ";extended properties=""excel 8.0;hdr=yes"""
ADO_CN.Open
ADO_RS.Open SQL, ADO_CN, 3, 1
'
'   Eğer Hiç Kayıt Yoksa
    If ADO_RS.RecordCount = 0 Then
    ADO_RS.Close
    ADO_CN.Close
    Set ADO_RS = Nothing
    Set ADO_CN = Nothing
    MsgBox "Kayıt Bulunamadı.", vbCritical, "Veri Yok"
    Exit Sub
    End If
ADO_RS.MoveFirst
    Do While Not ADO_RS.EOF
    Lst_Detay.AddItem
'        Lst_Detay.Column(0, Lst_Detay.ListCount - 1) = ADO_RS.Fields("Departman").Value
'        Lst_Detay.Column(1, Lst_Detay.ListCount - 1) = ADO_RS.Fields("MuhasebeHesapNo").Value
'        Lst_Detay.Column(2, Lst_Detay.ListCount - 1) = Format(ADO_RS.Fields("FullTarih").Value, "DD/MM/YYYY")
'        Lst_Detay.Column(3, Lst_Detay.ListCount - 1) = ADO_RS.Fields("FisNo").Value
'        Lst_Detay.Column(4, Lst_Detay.ListCount - 1) = ADO_RS.Fields("Aciklama").Value
'        Lst_Detay.Column(5, Lst_Detay.ListCount - 1) = Format(ADO_RS.Fields("Tutar_TL").Value, "#,###.00")
'        ToplamTutar = ToplamTutar + ADO_RS.Fields("Tutar_TL").Value
    ADO_RS.MoveNext
    Loop



Lst_Detay.TextAlign = fmTextAlignRight
Txt_KayitSayisi.Text = ADO_RS.RecordCount
Txt_ToplamTutar.Text = Format(ToplamTutar, "#,###.00")

ADO_RS.Close
ADO_CN.Close
Set ADO_RS = Nothing
Set ADO_CN = Nothing
'
'Lst_Detay.Height = 445

DoEvents
End Sub

Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
Cvp: Excel İstediğimiz Sayfanın İstediğimiz Sutundan Sıralı Filtreli Gruplanmış Liste - Yazar: accessman - 17/01/2020, 18:53
Task