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

时间:2019-04-29 14:43:38

标签: vba forms ms-access controls

我正在尝试以单独的形式访问我具有的复选框的值。我没有问题,可以使用代码从自己的表单中访问复选框信息...

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 :(得分:0)

复选框不存储空值,而是存储布尔值(-1和0)。因此,如果您将逻辑从If Not IsNull(ctl) Then更改为If ctl = True Then,那么它将起作用。

此问题也已解决here

要在信用到期的地方提供信用,@ BankBuilder确实在我前面提到了这一点。

希望有帮助。 最好的问候。