Vba 根据用户选择MS Access隐藏/取消隐藏某些字段
我会问是否可以根据MS Access中的用户选择隐藏或取消隐藏某些字段 例如: 如果用户从下拉菜单中选择“其他”,则会出现一个文本框,写下他们的答案,依此类推 我在更新事件后尝试了此代码,但无效Vba 根据用户选择MS Access隐藏/取消隐藏某些字段,vba,ms-access,Vba,Ms Access,我会问是否可以根据MS Access中的用户选择隐藏或取消隐藏某些字段 例如: 如果用户从下拉菜单中选择“其他”,则会出现一个文本框,写下他们的答案,依此类推 我在更新事件后尝试了此代码,但无效 有什么帮助吗 非常感谢Me。Name是表单的名称。因此: Private子名称\u AfterUpdate() 选择案例我!名称。值 案例“其他” 我Other.Visible=True '读取“其他”的值。 我Name.Value=Me!其他价值 结束选择 端接头 尝试将选择大小写Me.NAME更改
有什么帮助吗
非常感谢
Me。Name
是表单的名称。因此:
Private子名称\u AfterUpdate()
选择案例我!名称。值
案例“其他”
我Other.Visible=True
'读取“其他”的值。
我Name.Value=Me!其他价值
结束选择
端接头
尝试将选择大小写Me.NAME
更改为NAME.Value
Value是数据控件的默认属性,通常不需要显式引用。然而,Name是一个保留的属性,在本例中,表单的属性soMe.Name
实际上返回表单的名称,或者后面是报表代码。使用.Value
强制VBA识别名为Name的控件。建议不要使用保留字作为对象名称。tbxName将是更好的命名约定。查看。表单是连续视图还是数据表视图?如果是,则所有记录将反映相同的可见/不可见状态。唯一的替代方法是使用条件格式并设置启用/未启用。hi@Gustav其他选项上仍显示其他字段使用bang(!)不会触发VBA intellisenseMe.Name.Value
会产生相同的结果。其他选项上还会出现其他字段。。。是的,如果您在其他地方没有将Visible设置为False,我可以使用if语句而不是cases吗?当然可以。这是一个偏好的问题。
Private Sub NAME_AfterUpdate()
Select Case Me.NAME
Case "Other"
Me.other.Visible = True
End Select
End Sub