Ms access 仅对某些用户发生运行时错误

Ms access 仅对某些用户发生运行时错误,ms-access,vba,ms-access-2010,Ms Access,Vba,Ms Access 2010,我有一个数据库,我发送给我公司的各种用户。他们的工作环境大多标准化,与我的工作环境相匹配,但也有例外 下面提供的代码(使用AutoExec宏调用)在我自己的机器上运行正常。但是,对于某些用户,它会生成以下错误消息: 运行时错误3027:无法更新。数据库或对象是只读的 调试器所处的行是 CurrentDb.Properties("StartUpShowDBWindow") = False 'Turn OFF Navigation pane 为什么会发生这种情况?我如何避免这种情况? 我不知道如何

我有一个数据库,我发送给我公司的各种用户。他们的工作环境大多标准化,与我的工作环境相匹配,但也有例外

下面提供的代码(使用AutoExec宏调用)在我自己的机器上运行正常。但是,对于某些用户,它会生成以下错误消息:

运行时错误3027:无法更新。数据库或对象是只读的

调试器所处的行是

CurrentDb.Properties("StartUpShowDBWindow") = False 'Turn OFF Navigation pane
为什么会发生这种情况?我如何避免这种情况?

我不知道如何继续或解决这个错误,因为我无法重现它。因此,我向你们所有人提出这个问题

这是我的代码:

Public Function StartUpDB()

'Disable regular close button
Call AccessCloseButtonEnabled(False)

'Set Variable used in rest of script
sUSER = modGLOBAL.fncUserName

'Enable or disable the Admin tab
If IsAdmin = True Then
'   ADMIN SETUP STARTS HERE
   CurrentDb.Properties("StartUpShowDBWindow") = True 'Turn ON Navigation pane
   CurrentDb.Properties("AllowFullMenus") = True 'Turn ON full menu
Else
'   BU SETUP STARTS HERE
'   CurrentDb.Properties("StartUpShowDBWindow") = False 'Turn OFF Navigation pane
'   CurrentDb.Properties("AllowFullMenus") = False 'Turn OFF full menu
End If

DoCmd.OpenForm "Hidden", acNormal, , , , acHidden 'Start hidden form with timer

End Function

首先,检查用户是否对accdb文件拥有读写权限。我假设您指的是实际的文件本身。我在数据库本身中创建了一个用户权限系统,但这并没有造成问题。这是我在代码中可以做到的吗?我只是浏览了一些旧的注释,发现了这样一条:
“如果以前没有设置启动属性,则必须创建它并将其添加到*Database*对象的*Properties*集合中。”
。hth。您是否能够修改PC上出现问题的其他对象或本地表?在运行时更改属性在重新启动应用程序之前不会生效。听起来您的目的是在共享应用程序之前保护应用程序,因此您需要设置这些属性,然后共享应用程序。用户不需要重新运行这些,这有点违背了目的。