Vba 如何正确使用if/then作为bolean值以使对象可见?

Vba 如何正确使用if/then作为bolean值以使对象可见?,vba,ms-access,Vba,Ms Access,我想显示一个无止境的访问表单。每个数据集都有一个是/否值(PA)。如果是,则应显示隐藏对象。这看起来很直截了当,但不起作用 我尝试将PA的值改为1,0,-1。要么什么也不发生,要么将为所有数据集显示对象 对象被定义为隐藏在窗体中 我很乐意得到一些建议/LP处理控件的更改事件,然后可以为其值赋值: Private Sub PA_Change() Me.object.Visible = PA.Value ' TODO: give 'object' an actual name End S

我想显示一个无止境的访问表单。每个数据集都有一个是/否值(PA)。如果是,则应显示隐藏对象。这看起来很直截了当,但不起作用

我尝试将PA的值改为1,0,-1。要么什么也不发生,要么将为所有数据集显示对象

对象被定义为隐藏在窗体中




我很乐意得到一些建议/LP

处理控件的
更改
事件,然后可以为其值赋值:

Private Sub PA_Change()
    Me.object.Visible = PA.Value ' TODO: give 'object' an actual name
End Sub

在左上角代码窗格下拉列表中找到
PA
,然后在右上角代码窗格下拉列表中选择
Change
事件(如果未自动选择),VBE将为您生成事件处理程序过程。

由于对象未绑定,您无法执行此操作。解除绑定后,它将对所有记录可见或不可见


一种解决方法是将控件移动到一个与主窗体具有主/子关系的小子窗体。

这可能更准确-我的回答假设Access窗体与MSForms的工作方式类似,这可能不是真的(我对Access不太熟悉,但我知道事实上Access表单模块与Excel工作表模块的共同点比MSForms用户表单多).userform与Access表单非常不同。确切地说,它们是Access拥有的文档模块,就像Excel中的工作表模块一样;userform属于VBProject,而不是其宿主文档。
Private Sub PA_Change()
    Me.object.Visible = PA.Value ' TODO: give 'object' an actual name
End Sub