从MS Access复选框获取价值

时间:2018-11-08 18:31:36

标签: ms-access access-vba

我有一个Access数据库,其中存储了一些数据,该数据库有13个表以及一个参考表。

我要创建一个包含多个复选框和一个按钮的表单。每个chekbox代表一个表,并且每个选择的表都将与VBA中写入的查询(与按钮单击相关联)内联接。

我已经在Excel中进行了同样的操作,并且效果很好,所以这里唯一的问题是我不知道如何访问复选框值并使用IF条件来获取正确的值SQL字符串。

为清楚起见,这里有一个IF语句,用于Excel中的其中一个复选框:

If Range("B8").Value = True Then

    CTODStrc = ", CTODTYPE, CTOD.TEMPERATURE, VALIDITY,  DELTAR, DELTAL"
    CTODStr = " JOIN CTOD ON REF.ID = CTOD.REF_ID"
    JoinStr = JoinStr & CTODStr
    Columns = Columns & CTODStrc

End If

SQLStr = RefStr & JoinStr 'Query sentence

SQLStr是查询文本,它具有前面添加的“选择”字符串。

在Excel中,单元格B8与该复选框相关联,但是在Access中,我必须使用以下形式的复选框来设置此条件-我该怎么做?

我尝试过Me.CbName.Value,但是它说不支持该命令。

谢谢。

1 个答案:

答案 0 :(得分:0)

复选框的选中状态由复选框控件的Value属性给出。对于块填充的三态复选框,此属性可以是0(未选中),-1(选中)或Null

由于Value属性是复选框的默认属性,并且假设您没有使用三重状态复选框,那么您应该可以简单地使用:

If CBName Then
    ' Do stuff
End If