Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Lỗi] Lấy dữ liệu từ database khác vào database hiện hành.
#1
Nhờ các Pro chỉ giáo:
tmtien261) có một chương trình Access. tmtien261 muốn mỗi khi chạy sẽ chọn nguồn data ngoài (data khác) cho chương trình. Khi chọn xong chương trình sẽ Load data từ các table của data ngoài vào các table hiện hành của chương trình. Việc chọn nguồn dữ liệu tmtien261 đã thực hiện được thông qua biến Public Mydata và công cụ duyệt file khi lựa chọn nguồn data.
Xong khi viết đoạn code nạp dữ liệu cho table thì bị báo lỗi tại dòng bôi đỏ ở dưới. Đoạn code như sau:

Dim rs As DAO.Recordset
Dim Mydb As DAO.Database
Set Mydb = OpenDatabase(Mydata, True, False, "MS Access;PWD=a")
Set rs = Mydb.OpenRecordset("Tentable", dbOpenTable)
Dim rsup As DAO.Recordset
Set rsup = CurrentDb().OpenRecordset("Tentable", dbOpenTable)

If rsup.RecordCount > 0 Then
CurrentDb.Execute "Delete * from Tentable"
End If
If rs.RecordCount > 0 Then
rs.MoveFirst
Do Until rs.EOF
rsup.AddNew
rsup.Fields("ID") = rs.Fields("ID")
rsup.Fields("Diengiai") = rs.Fields("Diengiai")
...
rsup.Update
rs.MoveNext
Loop
rs.Close: rsup.Close
Set Mydb = Nothing
End If
Không biết lỗi trên là do nguyên nhân gì ? Nhờ các pro chỉ giúp cách khắc phục lỗi hoặc cách nào để Load các table vào data hiện hành được nhanh chóng không ?
Cảm ơn nhiều !
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn
#2
(06-08-13, 05:24 PM)tmtien261 Đã viết: Nhờ các Pro chỉ giáo:
tmtien261) có một chương trình Access. tmtien261 muốn mỗi khi chạy sẽ chọn nguồn data ngoài (data khác) cho chương trình. Khi chọn xong chương trình sẽ Load data từ các table của data ngoài vào các table hiện hành của chương trình. Việc chọn nguồn dữ liệu tmtien261 đã thực hiện được thông qua biến Public Mydata và công cụ duyệt file khi lựa chọn nguồn data.
Xong khi viết đoạn code nạp dữ liệu cho table thì bị báo lỗi tại dòng bôi đỏ ở dưới. Đoạn code như sau:

Dim rs As DAO.Recordset
Dim Mydb As DAO.Database
Set Mydb = OpenDatabase(Mydata, True, False, "MS Access;PWD=a")
Set rs = Mydb.OpenRecordset("Tentable", dbOpenTable)
Dim rsup As DAO.Recordset
Set rsup = CurrentDb().OpenRecordset("Tentable", dbOpenTable)

If rsup.RecordCount > 0 Then
CurrentDb.Execute "Delete * from Tentable"
End If
If rs.RecordCount > 0 Then
rs.MoveFirst
Do Until rs.EOF
rsup.AddNew
rsup.Fields("ID") = rs.Fields("ID")
rsup.Fields("Diengiai") = rs.Fields("Diengiai")
...
rsup.Update
rs.MoveNext
Loop
rs.Close: rsup.Close
Set Mydb = Nothing
End If
Không biết lỗi trên là do nguyên nhân gì ? Nhờ các pro chỉ giúp cách khắc phục lỗi hoặc cách nào để Load các table vào data hiện hành được nhanh chóng không ?
Cảm ơn nhiều !
Ban sửa lại dòng này nhé
Mã PHP:
Set rsup CurrentDb().OpenRecordset("Tentable"dbOpenTable
thay bằng dòng này
Mã PHP:
Dim rsup As Recordset
Set rsup 
CurrentDb.OpenRecordset("Tentable"dbOpenTable
Reply
Những người đã cảm ơn
#3
Cảm ơn bạn đã quan tâm. Sửa đổi như bạn vẫn thế thôi bạn à ? Trong office khác thế nào mình ko rõ nhưng trong Ms Ac office 2007 thì chữ Currentdb hay Currentdb() đều được cả.
Trường hợp cụ thể của tmtien261, khi mở file dạng "Open Exclusive" thì bị báo lỗi ở dòng như đã nêu và lỗi cụ thể:
" Run-time error 3045
Could not use ....(tenfile+ đường dẫn) ; file already in use"

Rất mong các sư huynh chỉ giáo giúp !
Cảm ơn nhiều !
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn
#4
(07-08-13, 03:18 PM)tmtien261 Đã viết: Cảm ơn bạn đã quan tâm. Sửa đổi như bạn vẫn thế thôi bạn à ? Trong office khác thế nào mình ko rõ nhưng trong Ms Ac office 2007 thì chữ Currentdb hay Currentdb() đều được cả.
Trường hợp cụ thể của tmtien261, khi mở file dạng "Open Exclusive" thì bị báo lỗi ở dòng như đã nêu và lỗi cụ thể:
" Run-time error 3045
Could not use ....(tenfile+ đường dẫn) ; file already in use"

Rất mong các sư huynh chỉ giáo giúp !
Cảm ơn nhiều !
Bạn thay lại dòng này. Thay DAO.Recordset = Recordset
Mã PHP:
Dim rsup As Recordset
Set rsup 
CurrentDb().OpenRecordset("Tentable"dbOpenTable
Reply
Những người đã cảm ơn
#5
Vẫn không được trav2t ơi ! Các Pro ơi xin chỉ giáo với !
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
Reply
Những người đã cảm ơn


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Cài đặt ODBC -nền tảng kết nối Access và nguồn dữ liệu khác Noname 33 19,312 01-12-16, 06:49 PM
Bài mới nhất: atula77
  Ms Access VBA và Google drive, một vài ý tưởng trong chia sẻ và đồng bộ số liệu... paulsteigel 46 3,857 07-10-16, 02:43 PM
Bài mới nhất: kieu manh
  [Hỏi] Xuất dữ liệu từ Access ra Excel bị ẩn cột Minh Tiên 0 134 02-09-16, 05:38 PM
Bài mới nhất: Minh Tiên
  Export dữ liệu sang Word ( Nhiều dòng trong sub) danhxetnghiem 26 3,090 01-08-16, 11:08 AM
Bài mới nhất: jeck09nt
  Một số kinh nghiệm khi viết ứng dụng truy xuất dữ liệu qua mạng internet lehongduc 4 357 24-06-16, 02:31 PM
Bài mới nhất: lehongduc

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ