Nếu bạn chỉ cần đường dẫn của MDB hiện đang mở trong giao diện người dùng truy cập, tôi khuyên bạn nên viết một hàm phân tích cú pháp CurrentDB.Name và sau đó lưu kết quả trong biến tĩnh bên trong hàm. Một cái gì đó như thế này:
Public Function CurrentPath() As String
Dim strCurrentDBName As String
Static strPath As String
Dim i As Integer
If Len(strPath) = 0 Then
strCurrentDBName = CurrentDb.Name
For i = Len(strCurrentDBName) To 1 Step -1
If Mid(strCurrentDBName, i, 1) = "\" Then
strPath = Left(strCurrentDBName, i)
Exit For
End If
Next
End If
CurrentPath = strPath
End Function
Điều này có lợi thế là nó chỉ lặp qua tên một lần.
Tất nhiên, nó chỉ hoạt động với tệp đang mở trong giao diện người dùng.
Một cách khác để viết những dòng này sẽ được sử dụng các chức năng cung cấp tại link bên trong hàm trên, như sau:
Public Function CurrentPath() As String
Static strPath As String
If Len(strPath) = 0 Then
strPath = FolderFromPath(CurrentDB.Name)
End If
CurrentPath = strPath
End Function
Điều này làm cho lấy đường dẫn hiện tại rất hiệu quả khi sử dụng mã có thể được sử dụng cho việc tìm kiếm đường dẫn cho bất kỳ tên tệp/đường dẫn nào.
Nguồn
2009-01-09 17:09:55
gì gớm ghiếc về nó? Nó trông giống như mã khá đơn giản đối với tôi, và tôi đã có các phiên bản của riêng tôi được viết cho A97 vẫn đang chạy trong các ứng dụng ngày nay, mặc dù chúng cung cấp các hàm dựng sẵn tốt hơn so với sẵn có trong A97. –
Đã xóa khỏi các câu hỏi: CurrentProject.Path có sẵn trong Access 97 không? – Fionnuala
Trả lời: Không, CurrentProject hoàn toàn bị thiếu trong Access 97. Có CurrentDb.Name, tuy nhiên, nhưng đó là đường dẫn đầy đủ bao gồm tên tệp. - apenwarr – Fionnuala