Sau khi tham khảo cách kết nối truy vấn giữa Excel và Access của a Hai Lúa
E có mạnh dạn thay thế thử kết nối giữa Excel với Excel bằng ADO với câu lệnh sau:
Kết nối với file DLG.xlsm trên cùng folder
Code lấy dữ liệu tất cả các cột:
Sau khi chạy code thì báo lỗi: Unrecognize database format
E muỗn hỏi kết nối để truy vấn giữa 2 file Excel thì có dùng ADO được ko? để ko cần phải import dữ liệu vào file nguồn tránh dung lượng file tăng.
Nếu có code trên phải thay đổi thế nào?
E có mạnh dạn thay thế thử kết nối giữa Excel với Excel bằng ADO với câu lệnh sau:
Mã:
Public cnn As New ADODB.Connection
Sub Moketnoi()
Set cnn = New ADODB.Connection
Dim strCNString As String
strCNString = "Data Source=" & ThisWorkbook.Path & "\[COLOR=#ff0000][B]DLG.xlsm[/B][/COLOR]"
With cnn
.Provider = "Microsoft Jet 4.0 OLE DB Provider"
.ConnectionString = strCNString
.CursorLocation = adUseClient
.Open
End With
End Sub
Kết nối với file DLG.xlsm trên cùng folder
Code lấy dữ liệu tất cả các cột:
Mã:
Sub LayDuLieuTatCaCot()
On Error GoTo loi
Dim lsSQL As String: Dim rst As New ADODB.Recordset
If cnn.State <> 1 Then Moketnoi
lsSQL = "SELECT * " & _
"FROM tblData"
rst.Open lsSQL, cnn, adOpenStatic, adLockReadOnly
Cells.ClearContents
Range("A5").CopyFromRecordset rst
rst.Close
Set rst = Nothing
cnn.Close
Set cnn = Nothing
Exit Sub
loi:
MsgBox Err.Description
End Sub
Sau khi chạy code thì báo lỗi: Unrecognize database format
E muỗn hỏi kết nối để truy vấn giữa 2 file Excel thì có dùng ADO được ko? để ko cần phải import dữ liệu vào file nguồn tránh dung lượng file tăng.
Nếu có code trên phải thay đổi thế nào?