Nguyên Hồng
Nguyên Hồng
Thảo luận 1 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 10 lượt xem

Lỗi không tìm thấy object dùng đã có tên trong name manager với scope là Workbook với Early binding

Hi các anh, em có thử tự làm lại với riêng trường hợp của em. Lúc đầu em đã dùng power querry để load data; check ở Name Manager thì bị lỗi không tìm thấy object.  

Code:

Sub metal()
Dim cnn As ADODB.Connection
Dim lrs As ADODB.Recordset
Dim sqlquerry As String
Set cnn = New ADODB.Connection
Set lrs = New ADODB.Recordset

cnn.ConnectionString = " Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=""Excel 8.0;HDR=YES"";"
cnn.Open
sqlquerry = "Select * from Raw_data"
lrs.Open sqlquerry, cnn
Sheets("Metal").Range("A1").CopyFromRecordset

End Subem có thử define sang tên khác từ “Raw_data” sang “data” nhưng kết quả vẫn không đổi.  Nhờ thầy và mọi người tư vấn giúp!

Thảo luận 1 câu trả lời
Lượt xem 10 lượt xem
Vỗ tay vỗ tay
Nguyên Hồng 23:06 - Jun 15, 2025

Em có tham khảo câu trả lời của thầy cho các bạn khác, đã thêm $ và ngoặc vuông vào tên table nhưng kết quả vẫn không được. Nhờ thầy và các bạn cứu em với ạ

Option Explicit
Sub metal()
Dim cnn As ADODB.Connection
Dim lrs As ADODB.Recordset
Dim sqlquerry As String
Set cnn = New ADODB.Connection
Set lrs = New ADODB.Recordset

cnn.ConnectionString = " Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=""Excel 8.0;HDR=YES"";"
cnn.Open
sqlquerry = "select * from [shortage$]"
lrs.Open sqlquerry, cnn
Sheets("Metal").Range("A1").CopyFromRecordset

End Sub

 

Vỗ tay vỗ tay
Câu hỏi liên quan
© 2020 - Bản quyền của Công Ty Cổ Phần Công Nghệ Giáo Dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở Kế hoạch và Đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ Thông tin và Truyền thông