访问VBA:从另一个表单获取复选框的价值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了访问VBA:从另一个表单获取复选框的价值相关的知识,希望对你有一定的参考价值。

我试图以单独的形式访问我的复选框的值。我使用代码从它自己的表单中访问复选框信息没有问题...

If Not IsNull(Check43) Then
    If Check43 Then
        DoCmd.OpenQuery "Insert_Query"
    End If
End If

但我无法弄清楚如何以另一种形式访问“Check43”的值。我觉得下面的东西会起作用......

Dim frm As Form, ctl As Control
Set frm = Forms!Relevant_Application
Set ctl = frm!Check43

If Not IsNull(ctl) Then
    If ctl Then
        DoCmd.OpenQuery "Insert_Query"
    End If
End If

但即使选中该复选框,它也不起作用。它不会抛出错误,它只是跳过函数。

答案

复选框不存储空值,它们存储布尔值(-1和0)。因此,如果你将逻辑从If Not IsNull(ctl) Then更改为If ctl = True Then它应该工作。

这也是here解决的问题。

为了给予信用到期@BankBuilder在我之前提到了这一点。

希望有所帮助。最好的祝福。

以上是关于访问VBA:从另一个表单获取复选框的价值的主要内容,如果未能解决你的问题,请参考以下文章

VBA访问文本框返回空值

MS Access VBA - 在表单上提取列表框值(使用表单名称。)

访问 VBA:如何在表单中获取输入并在查询中使用它们

VBA访问检查父表单是不是存在

Excel VBA - 将多个用户表单复选框值写入单个单元格

访问:使用从另一个查询中选择的 DAO.recordset 运行查询