0

我已经建立了一个分为前端和后端的访问数据库。这个前端有相当多的 VBA 编程。我把它们都放在我们工作时的共享驱动器上,供所有用户使用。但是,我是唯一可以打开它的人。当其他用户打开它时,只需访问 Access 的主屏幕,它会显示打开的最近文件、新数据库等。但是,如果我在其他人的计算机上使用我的帐户登录,我就可以打开它。任何想法为什么用户无法打开它?我将它作为 .accde 发布,所以所有的 VBA 都会被编译,所以它不应该是一个参考错误。

4

2 回答 2

2

好吧,我在发布我的问题时有点仓促,我只是发现了问题。后端存储在共享驱动器上访问受限的文件夹中,因此我们不必担心任何用户访问数据,但是,这意味着无权访问该文件夹的用户,AKA 不是我,无法打开前端。解决方案:锁定后端并将其放在共享位置。

于 2013-02-27T22:15:36.277 回答
1

检查后端数据库中的链接表以及对它们的任何 VBA 引用是否具有完全限定的网络驱动器路径。我遇到了与此问题相关的类似情况。

即使每个人都可以访问数据库以及共享驱动器,但在 Novell 等一些网络系统中,每个用户的共享驱动器权限都是单独映射和别名的。因此,相同的网络驱动器路径可以映射到不同用户的不同驱动器号。

因此,例如,当您登录时,您可能会看到该文件位于 G:\Shared Stuff 但是,另一个用户完全有可能将此网络驱动器映射到 H:\Shared Stuff。结果,他们仍然可以看到您的前端数据库,但是任何引用或链接到 G:\Shared Stuff 的交互对他们来说都将失败,因为您打算引用的驱动器已映射到他们的 H: 驱动器。如果您使用 Access 向导拆分数据库或创建链接表,这很容易发生。

如果您使用的是使用驱动器号的文件系统(例如 Novell),则解决方案是使用完整的文件路径,包括被映射驱动器号抽象出来的路径部分。因此,例如,您可能需要使用 \\Company Data\My Department's Data\Shared Stuff 来代替 G:\Shared Stuff。

在 Novell 中,您可以通过查看“映射网络驱动器”来找到完整的网络路径。

这不是发生这种情况的唯一原因,但值得检查!祝你好运。

于 2013-02-27T22:28:45.517 回答