Page 1 of 1

อยากทราบโค๊ด ADO ที่ connect Access Version 2010

Posted: Sat Jun 13, 2015 8:37 pm
by akekorn
สวัสดีครับเพื่อนสมาชิกทุกท่าน
ผมอยากทราบว่าควรแก้ไขโค้ด ให้ติดต่อกับ Access 2010 ที่มีนามสุกล .accdb
โดยผมได้แนบโค้ดที่ทำไว้มาด้วยให้ช่วยชี้แนะครับ
ขอบคุณครับ

Code: Select all

Sub GetData()
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim sQRY As String
Dim strFilePath As String
Dim B As String
B = Format(Year(Date), "0000") & Format(Month(Date)-1, "00")
    strFilePath = "D:\Monthly\Cardlink\" & B & "\Rpt_Monthly\ROBINSON.MDB"
    Set cnn = New ADODB.Connection
    Set rs = New ADODB.Recordset
    Sheet4.Range("DataRange").ClearContents
    cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
        "Data Source=" & strFilePath & ";"
    'sQRY = "SELECT tblData.* FROM tblData"
    sQRY = "NEWCUST"
    rs.CursorLocation = adUseClient
    rs.Open sQRY, cnn, adOpenStatic, adLockReadOnly
    Application.ScreenUpdating = False
    Sheet4.Range("A2").CopyFromRecordset rs
    rs.Close
    Set rs = Nothing
    cnn.Close
    Set cnn = Nothing
    Exit Sub
End Sub

Re: อยากทราบโค๊ด ADO ที่ connect Access Version 2010

Posted: Sat Jun 13, 2015 8:42 pm
by snasui
:D คุณ akekorn ทราบหรือไม่ว่าบรรทัดใดตามที่โพสต์มาเป็นการเขียนให้อ้างถึงไฟล์ของ Access หากไม่ทราบก็ควรจะทราบและแก้ตรงนั้นก่อน หรือหากทราบแล้ว ลองแก้แล้ว ให้อธิบายสิ่งที่เป็นปัญหามาด้วยจะได้ตอบต่อไปจากนั้น แต่ผมดูเร็วๆ แล้วแล้วไม่พบว่าไม่มีการแก้ใด ๆ เหมือนเป็นการนำ Code ต้นฉบับมาถามครับ

Re: อยากทราบโค๊ด ADO ที่ connect Access Version 2010

Posted: Sat Jun 13, 2015 9:30 pm
by akekorn
ครับผมแต่ผมอยากทราบว่า หาก connect ไปที่ file access ที่นามสกุล .mdb
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;"
แต่หากเป็น version 2010 ซึ่งมี นามสกุล .accdb อยากทราบควรแก้ไขการ connect เป็นแบบไหนครับ

Re: อยากทราบโค๊ด ADO ที่ connect Access Version 2010

Posted: Sat Jun 13, 2015 9:52 pm
by snasui
:D ดูที่นี่ครับ https://www.connectionstrings.com/access/

Re: อยากทราบโค๊ด ADO ที่ connect Access Version 2010

Posted: Sun Jun 14, 2015 10:39 pm
by akekorn
ขอบคุณครับแต่ผมขอถามอีกนิดครับ เวลา จะ add refference จะเลือกเป็นอะไรครับเพราะของเดิมจะ add
เป็น microsoft activex data object 2.8 library
หากเป็น Provider=Microsoft.ACE.OLEDB.12.0;
จะต้อง add refference ประเภทไหนครับ
รบกวนด้วยครับ
ขอบคุณครับ

Re: อยากทราบโค๊ด ADO ที่ connect Access Version 2010

Posted: Mon Jun 15, 2015 11:18 am
by logic
ผมใช้ 2.8 ก็ทำงานได้นะครับ ตอนนี้ติดอะไร ตรงไหนครีบ

Re: อยากทราบโค๊ด ADO ที่ connect Access Version 2010

Posted: Mon Jun 15, 2015 9:02 pm
by akekorn
อ้อครับเดี๋ยวลองอีกที ขอบคุณทุกท่านนะครับ