Sql den Access Tablosuna Veri Nasıl Çekilir.

Katılım
17 Mayıs 2005
Mesajlar
117
Excel Vers. ve Dili
2013 TR
2013 EN
Merhabalar,

Daha önceden Sql den Excele veri çekerek bir rapor hazırladım, şimdi bu raporu Access tabanına çevirmeyi düşünüyorum, Bunun için Access te tablolar yaratıyorum ve sql den gelecek verilerin bu tablolara kaydolmasını istiyorum, sorun şu ki excele tablo kayıt adresi Sayfax.cells(x,x). value = Rs(x) şeklinde verilmekte idi Access te bu adresin nasıl olması gerektiğini bulamadım,

Aşağıda excelde kullanmış olduğum kodlardan bir tanesi var, acaba bu kodları nasıl değiştirmem gerekir.

Kod:
Sub TRB_FATURA_TUM()
Dim conn As New ADODB.Connection
    Dim rs As New ADODB.Recordset
    Dim SqlText As String
 With conn
    .Provider = "sqloledb"
    .CommandTimeout = 1200
    .ConnectionString = "Data Source= NETSIS;USER ID= rapor;PASSW=;AUTO TRANSLATE=FALSE"
    .Open
    .DefaultDatabase = "AU2007"
    End With
    SqlText = " SELECT  SASI,STOK_KODU,STOK_ADI,A_H,SIRKU,KOTA," _
                        & "MODEL_YILI,RENK,ALIS_TRH,ALIS_FTNO,ALISMIK," _
                        & "ALIS_KDVSIZ,USTYAPI,SAT_TRH ,SAT_FATNO,SAT_SUBE," _
                        & "PLASIYER_ACIKLAMA,FAT_TESLIM_CARI,SATIS_SEKLI," _
                        & "KDVSIZ_FIY,USTYAPI_SATIS,KATKI,KESILECEK_KATKI," _
                        & "SATFIYAT_ARTI_KATKI,OPR_KAR"
    SqlText = SqlText + " FROM MEH_Y_SASI_OPR_KAR WHERE SATMIK='1' " _
                        & "AND MUSTERI NOT LIKE 'BMC%'" _
                        & "AND SAT_TRH BETWEEN '2007-01-01' AND '2007-12-31' AND SUBE_KODU='5'"
    SqlText = SqlText + " ORDER BY SAT_TRH "
    rs.Open SqlText, conn, adOpenStatic, adLockReadOnly
    Sayfa3.Range("B3:Z1500").ClearContents
    i = 3
    Do While Not rs.EOF
        Sayfa3.Cells(1, 1).Value = i
        Sayfa3.Cells(i, 2).Value = rs(0)
        Sayfa3.Cells(i, 3).Value = rs(1)
        Sayfa3.Cells(i, 4).Value = rs(2)
        Sayfa3.Cells(i, 5).Value = rs(3)
        Sayfa3.Cells(i, 6).Value = rs(4)
        Sayfa3.Cells(i, 7).Value = rs(5)
        Sayfa3.Cells(i, 8).Value = rs(6)
        Sayfa3.Cells(i, 9).Value = rs(7)
        Sayfa3.Cells(i, 10).Value = rs(8)
        Sayfa3.Cells(i, 11).Value = rs(9)
        Sayfa3.Cells(i, 12).Value = rs(10)
        Sayfa3.Cells(i, 13).Value = rs(11)
        Sayfa3.Cells(i, 14).Value = rs(12)
        Sayfa3.Cells(i, 15).Value = rs(13)
        Sayfa3.Cells(i, 16).Value = rs(14)
        Sayfa3.Cells(i, 17).Value = rs(15)
        Sayfa3.Cells(i, 18).Value = rs(16)
        Sayfa3.Cells(i, 19).Value = rs(17)
        Sayfa3.Cells(i, 20).Value = rs(18)
        Sayfa3.Cells(i, 21).Value = rs(19)
        Sayfa3.Cells(i, 22).Value = rs(20)
        Sayfa3.Cells(i, 23).Value = rs(21)
        Sayfa3.Cells(i, 24).Value = rs(22)
        Sayfa3.Cells(i, 25).Value = rs(23)
        Sayfa3.Cells(i, 26).Value = rs(24)
        rs.MoveNext
        i = i + 1
    Loop
    rs.Close
    conn.Close
    Set rs = Nothing
    Set conn = Nothing
End Sub
 
Katılım
25 Aralık 2005
Mesajlar
4,160
Excel Vers. ve Dili
MS Office 2010 Pro Türkçe
Sayın serinci,

Siz de excelin etkisi altındasınız. SQL tabloları varken access içinde yeni tablo yapmaya gerek yok. Ya sql deyimleriyle alıp istediğiniz şekilde kullanırsınız, ya da ODBC üzerinden direk olarak tabloları access uygulamasına bağlayabilirsiniz. Tercih sizin. Ama kesinlikle yeni tablo yapmaya gerek yok nasılsa tablo ve veriler mevcut.

İyi çalışmalar:)
 
Katılım
17 Mayıs 2005
Mesajlar
117
Excel Vers. ve Dili
2013 TR
2013 EN
Teşekkürler.. öyle denemek daha mantıklı sanırım
 
Son düzenleme:
Üst