Access'den Excel'e Veri Aktarma Sorunu

1 2
16/09/2021, 17:17

karacaayt

2. dediğin üstad (2. sütun B2'ye 6. sütun C2 arada 3 sütun boş bırak 3 sütun D2'ye tarzı bir şey mi istediğiniz) yani mesla 2. sutunu B4 diyicem B4'den başlayıp aşağı doğru sıralıycak 3. sütunu D5 diyicem, onuda D5'den aşağı doğru sıralıyacak
16/09/2021, 17:49

berduş

aradaki boş sütunların amacı ne
yani neden diyelim exceldeki
A sütununa ki Adı yazılacak,
B sütununa soy adı yazılacak
C,D,E sütunları boş bırakılıp
toplamlar F sütununa yazılacak
16/09/2021, 23:14

berduş

kodu aşağıdaki gibi düzenleyip dener misiniz?
Dim Sql As String
Dim ADO_RS As ADODB.Recordset
Dim ADO_CN As ADODB.Connection

SQL = "SELECT * FROM Sorgu1"


Set ADO_RS = New ADODB.Recordset
Set ADO_CN = New ADODB.Connection

ADO_CN.ConnectionString = "provider=Microsoft.ACE.OLEDB.12.0;" & _
"Data Source=" & ThisWorkbook.Path & "\Örnek.accdb;"

ADO_CN.Open
ADO_RS.Open SQL, ADO_CN, 3, 1 ' güncelleme yapabilmek için 1,3 0lmalı yada adOpenKeyset, adLockOptimistic
strSy = ADO_RS.RecordCount

'hy________________________________________________
'1. sutunu A4 diyicem A4'den başlayıp aşağı doğru sıralıycak

ADO_RS.MoveFirst
Dim arr, SonDizi
Dim Itm As Variant
arr = ADO_RS.GetRows(, , 0) '<==burada 0 yazan yer 1. alan

ReDim SonDizi(LBound(arr, 2) To UBound(arr, 2), LBound(arr, 1) To UBound(arr, 1))
For i = LBound(arr, 2) To UBound(arr, 2)
For j = LBound(arr, 1) To UBound(arr, 1)
SonDizi(i, j) = arr(j, i)
Next j
Next i
'ListBox1.List = SonDizi
Sheets("Sayfa1").Range("A4").Resize(strSy) = SonDizi
'hy________________________________________________
'2. sutunu B4 diyicem B4'den başlayıp aşağı doğru sıralıycak
ADO_RS.MoveFirst
arr = ADO_RS.GetRows(, , 1) '<==burada 1 yazan yer 2. alan

ReDim SonDizi(LBound(arr, 2) To UBound(arr, 2), LBound(arr, 1) To UBound(arr, 1))
For i = LBound(arr, 2) To UBound(arr, 2)
For j = LBound(arr, 1) To UBound(arr, 1)
SonDizi(i, j) = arr(j, i)
Next j
Next i
Sheets("Sayfa1").Range("B4").Resize(strSy) = SonDizi
'hy________________________________________________
'3. sütunu D5 diyicem, onuda D5'den aşağı doğru sıralıyacak
ADO_RS.MoveFirst
arr = ADO_RS.GetRows(, , 2) '<==burada 2 yazan yer 3. alan

ReDim SonDizi(LBound(arr, 2) To UBound(arr, 2), LBound(arr, 1) To UBound(arr, 1))
For i = LBound(arr, 2) To UBound(arr, 2)
For j = LBound(arr, 1) To UBound(arr, 1)
SonDizi(i, j) = arr(j, i)
Next j
Next i
Sheets("Sayfa1").Range("D5").Resize(strSy) = SonDizi '3. Alan D5


son:
ADO_RS.Close
ADO_CN.Close
Set ADO_RS = Nothing
Set ADO_CN = Nothing
22/09/2021, 15:26

karacaayt

Üstad biraz uğraştımda Access de çok yeni olduğım için kodları anlamlandırıp projeye uyarlıyamadım. Başka bir metod deniyeceğim artık.
1 2