Hỏi: Tôi có một cơ sở dữ liệu Access và thực hiện split thành backend
File QLVB đặt trong thư mục Run (thư mục Run nằm trong thư mục QLVB) chứa form, repost, ...
File QLVB_en đặt trong thư mục Data (thư mục Data trong thư mục QLVB) chứa các table
Khi tôi di chuyển (hoặc đồng bộ) thư mục QLVB (từ USB vào máy và ngược lại) là các liên kết của các table không còn nữa.
Bạn nào rành về Access có thể viết đoạn mã giúp tôi tự động nối lại các liên kết đó không.
Đáp:
Với T là tên table, Bạn cho gọi đoạn code sau để link. Có bao nhiêu table thì bạn gọi bấy nhiêu lần với tên table T tương ứng.
Code:
Mã:
Sub LinkTable(T As String)
' xoa table link cu~
DoCmd.DeleteObject acTable, T
'link lai tablelink moi
DoCmd.TransferDatabase acLink, "Microsoft Access", CurrentProject.Path & "\" & "QLVB_en.mdb", acTable, T, T
End Sub
.
Chú ý, đọan code này chỉ áp dụng trong trường hợp file chương trình và dữ liệu bạn chung 1 thư mục. Còn khác thư mục thì mình sẽ đưa giải pháp khác. Ví dụ bạn phải khai báo thư mục chứa dữ liệu.