Excelden Access e veri aktarımı

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.


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
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Aşağıdaki linkte 8 No'lu mesajımın ekini incelemnizde yarar var ...


.
 

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
Aşağıdaki linkte 8 No'lu mesajımın ekini incelemnizde yarar var ...


.

Haluk Bey teşekkürler,

" Office 2007 ve alt surumler icin Provider olarak "Jet.OLEDB.4.0", sonrasi icin "ACE.OLEDB.12.0" kullan... "
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Evet... ne oldu?

(Kod zaten o kontrolu yapıp, ona göre "Provider" seçiyor.)

.
 

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
Evet... ne oldu?

(Kod zaten o kontrolu yapıp, ona göre "Provider" seçiyor.)

.
Teşekkürler paylaştığınız bilgi için demek istedim ve sizin ifadenizi aynen alıntı yaparak ekledim, yine benzeri bir durumla karşılaşıp araştırmak isteyen olabilir diye düz metinsel ifade görünsün diye alıntı yaptım. Kısaca kendi adıma problemi anlamış ve çözmüş oldum, tekrardan teşekkürler.
 

Zeki Gürsoy

Uzman
Uzman
Katılım
31 Aralık 2005
Mesajlar
4,356
Excel Vers. ve Dili
Office 365 (64 bit) - Türkçe
Bilgisayarda yüklü sağlayıcı(ları)nın desteklediği veritabanı sürümleri aşağıdaki gibidir:

' JET Version - Database Version
' 3.5 - 1 To 3.X
' 4.0 - 1 To 4.0
' ACE 12 - 1 To ACE
' ACE 14 - 3.X To ACE
' ACE 15 - 4.0/ACE
' ACE 16 - 4.0/ACE
 
Üst