Bu olayı başka bir accessten yapabilmemiz için ne yapabiliriz ? Sn.Oğulcan92'nin acceste ki tabloyu silip kendi tablomu ekledim veri alışverişi olmdı..Hata kodu var ! Nasıl yapabiliriz bu olayı ?
İlk olarak projenize bir modül ekleyin ve modüle bu kodları yapıştırın.
Kod:
Option Explicit
Dim CON As ADODB.Connection
Dim Rec As ADODB.Recordset
Dim Query As QueryTable
Dim strSQL As String
Dim RS As Object
Dim adoCN As Object
Sub SQL_Sorgusu()
Dim conn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim Nsql As String
Dim i As Integer
Worksheets("Sayfa1").Select
Set conn = New ADODB.Connection
With conn
.Provider = "Microsoft.JET.OLEDB.4.0"
.Open Application.ActiveWorkbook.Path & "\tablolar.mdb"
End With
Nsql = "SELECT * FROM data;"
Set rst = New ADODB.Recordset
With rst
.ActiveConnection = conn
.Open Nsql, conn, adOpenDynamic, adLockBatchOptimistic
End With
Range("A2:H30000").ClearContents
For i = 0 To rst.Fields.Count - 1
Range("A2").Offset(0, i).Value = rst.Fields(i).Name
Next i
Range("A2").CopyFromRecordset rst
conn.Close
End Sub
Sonra sayfanızın Btn_Click eventine bu kodu yapıştırın.
Kod:
SQL_Sorgusu
Son olarakta Projenize Kod panelinde iken Tools menusunden Microsoft Activex Data Objets 2.8 Library references ekleyin ve sayfaya dönüp butona basın işlem olacaktır.
Not: tablolar Access ile Excel aynı dizinde olmalı bu önemli.
Kolay gelsin.