Minh Tiên > 06-08-13, 05:24 PM
trav2t > 07-08-13, 08:43 AM
(06-08-13, 05:24 PM)tmtien261 Đã viết: Nhờ các Pro chỉ giáo:Ban sửa lại dòng này nhé
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 !
Set rsup = CurrentDb().OpenRecordset("Tentable", dbOpenTable)
Dim rsup As Recordset
Set rsup = CurrentDb.OpenRecordset("Tentable", dbOpenTable)
Minh Tiên > 07-08-13, 03:18 PM
trav2t > 09-08-13, 09:53 AM
(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ả.Bạn thay lại dòng này. Thay DAO.Recordset = Recordset
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 !
Dim rsup As Recordset
Set rsup = CurrentDb().OpenRecordset("Tentable", dbOpenTable)
Minh Tiên > 14-08-13, 05:54 PM