• DİKKAT

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

Birden fazla tanımlanmış alanları ADO ile sorgulama

Katılım
8 Haziran 2007
Mesajlar
401
Excel Vers. ve Dili
excel fonksiyonlar
Forumda emeği geçen herkese merhaba. Aşağıdaki kodlarla GELİR-GİDER.xlsm
dosyasında [GELİR] isimli alanı açık olan çalışma kitabıma kopyalayabiliyorum. Derdim diğer alanları da kopyalayabilmek. Örneğin [GİDER] alanını R sütunundan itibaren kopyalamak istiyorum. Şimdi sorum şu : Tek bir modül içinde bu işlemleri yapabilir miyiz ? Yoksa her alan için ayrı bir modüle kod mu yazmalıyım. ? İlgilenen
arkadaşlara şimdiden teşekkürler.


Kod:
Sub bütceal()

Dim con As Object, rs As Object
Set con = CreateObject("adodb.connection")
Set rs = CreateObject("ADODB.Recordset")

Dim syf1 As Worksheet
Set syf1 = Sheets("Sayfa1")
Dim baş As Integer
Set syf1 = Worksheets("Sayfa1")
baş = syf1.Range("D1048576").End(3).Row + 1

con.Open "Provider=Microsoft.ace.oledb.12.0;Data source=C:\Documents and Settings\user\Belgelerim\EXCEL BELGELERİ\BÜTCE\2013-2014 BÜTCE TAHMİN\GELİR_GİDER.xlsm" & _
"; Jet OLEDB:Database Password=ft; extended properties=""excel 12.0;hdr=yes"""

sorgu = "Select * FROM [GELİR]"
rs.Open sorgu, con, 3, 1
Range("B" & baş).Cells.CopyFromRecordset rs
rs.Close: con.Close

Set con = Nothing
Set rs = Nothing

End Sub[/QUOTE]
 
Merhaba, yeni modül açamanıza gerek yok, yeni bir kayıt seti açın, yeni alanı o kayıt setine ayarlayın.
Aşağıdaki gibi yapabilirsiniz.
Dim rs1 as ADODB.Recordset
...
Range("R" & bas).Cells.CopyFromRecordset rs1
 
Kavramlari karistirmadan ve doğru biçimde daha açık ve net anlatabilir misiniz ?
 
Merhaba, yeni modül açamanıza gerek yok, yeni bir kayıt seti açın, yeni alanı o kayıt setine ayarlayın.
Aşağıdaki gibi yapabilirsiniz.
Dim rs1 as ADODB.Recordset
...
Range("R" & bas).Cells.CopyFromRecordset rs1

Teeşekkürler sayın monelogg. Sorun çözülmüştür. İyi geceler. :)
 
Geri
Üst