walabi
Altın Üye
- Katılım
- 22 Eylül 2012
- Mesajlar
- 671
- Excel Vers. ve Dili
-
excel 2010
excel 2013
- Altın Üyelik Bitiş Tarihi
- 06-08-2025
Merhaba,
Excelden access e veri aktarmak istiyorum. Daha önce bu konuyla hiç ilgilenmedim, yeni başladım.
İnternet üzerinde araştırma yaparken, aşağıdaki kodları buldum ve kendi örnek dosyalarıma uygulamaya çalıştım. Ancak şöylesi bir problem yaşıyorum.
veritabani.accdb" satırı benim bilgisayarımdaki oluşturduğum access . Yani uzantısı accdb. Örnek uygulamada mcd . mcd uzantısını accdb olarak değiştirdiğimde Tanınmayan Veri Tabanı biçimi şeklinde bir hata alıyorum. Bunun sebebi sürüm, versiyon farklılığımıdır. Kendi bilgisayarımda accdb uzantılı dosya oluştuğu için , rahat çalışabilmek adına bunu nasıl düzeltebilirim.
Excelden access e veri aktarmak istiyorum. Daha önce bu konuyla hiç ilgilenmedim, yeni başladım.
İnternet üzerinde araştırma yaparken, aşağıdaki kodları buldum ve kendi örnek dosyalarıma uygulamaya çalıştım. Ancak şöylesi bir problem yaşıyorum.
veritabani.accdb" satırı benim bilgisayarımdaki oluşturduğum access . Yani uzantısı accdb. Örnek uygulamada mcd . mcd uzantısını accdb olarak değiştirdiğimde Tanınmayan Veri Tabanı biçimi şeklinde bir hata alıyorum. Bunun sebebi sürüm, versiyon farklılığımıdır. Kendi bilgisayarımda accdb uzantılı dosya oluştuğu için , rahat çalışabilmek adına bunu nasıl düzeltebilirim.
Kod:
Private Sub CommandButton1_Click()
Dim cn As Object, rs As Object
'On Error Resume Next
Sheets("veri2").Range("B10:B14").ClearContents
Sheets("veri2").Range("b10").Value = TextBox1.Value
Sheets("veri2").Range("b11").Value = TextBox2.Value
Sheets("veri2").Range("b12").Value = TextBox3.Value
Sheets("veri2").Range("b13").Value = TextBox4.Value * 1
Sheets("veri2").Range("b14").Value = TextBox5.Value * 1
MsgBox "Excele kayıt yapıldı."
'// ADO..
Set cn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
cn.Open _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
ThisWorkbook.Path & "\veritabani.accdb"
'''// Yukarıdaki cn.Open bağlantı modeli yerine bir de
'''// aşağıdaki yapıyı deneyin. (Connction)
'cn.Open _
"Driver={Microsoft Access Driver (*.accdb)};DBQ=" & _
ThisWorkbook.Path & "\veritabani.accdb"
With rs
.Open "liste", cn, 1, 3
.addNew
.Fields(1) = TextBox1
.Fields(2) = TextBox2
.Fields(3) = TextBox3
.Fields(4) = TextBox4 * 1
.Fields(5) = TextBox5 * 1
.Update
.Close
End With
cn.Close
Set cn = Nothing
Set rs = Nothing
MsgBox "ADO - kayıt yapıldı"
If Err Then MsgBox Err.Description
End Sub