【问题标题】:Access VBA Run-time error '2186' - This property isn't available in Design View访问 VBA 运行时错误“2186”-此属性在设计视图中不可用
【发布时间】:2020-07-13 20:29:27
【问题描述】:

我们目前使用 Access 作为处理少量数据记录 (

Sub cmdDev_Click()
If DLookup("[AccessLevelID]", "tblUser", "[UserID] = " & Forms!frmLogin!cboUser) = 1 Then
     DoCmd.OpenForm "Finance_Form"
Else
    MsgBox "Sorry, you do not have the correct permissions required.", vbOKOnly
End If

End Sub

每当我运行宏时,它都会继续抛出以下错误消息“此属性在设计视图中不可用。”

我调试了代码,它突出显示了 IF 语句。我仔细检查了所有用户字段和表单引用,它们都没有问题地签出。 任何人都可以提出可能的原因吗?

谢谢!

【问题讨论】:

    标签: ms-access vba ms-access-2010


    【解决方案1】:

    当您打开表单时,请确保它没有像这样在 acdesign 中打开:

    docmd.openform "Finance_Form", acnormal
    

    如果您的组合框实际上是字符串格式而不是数字格式,那么我建议您这样做;

    "[UserID] ='" & Forms!frmLogin.cboUser & "'"
    

    此外,如果您的组合框有多个列(这很可能),您可能必须说明您想引用哪一列。第 0 列通常是绑定列。考虑到这一点,请参阅下面的示例,其中我也使用me 来引用组合框列。如果单击按钮与组合框在同一窗体上,您可以考虑这样做。

    Me.cboUser.Column(0)
    

    【讨论】:

      【解决方案2】:

      您可能需要指明 cboUser 的属性:

      Forms!frmLogin!cboUser!value
      

      【讨论】:

        猜你喜欢
        • 2022-10-20
        • 1970-01-01
        • 2016-08-03
        • 2010-09-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多