use*_*809 5 ms-access vba access-vba ms-access-2010
我正在MS Access中构建一个供用户输入数据的表单,但是可能有太多字段。大多数情况下,将只使用一半的字段。
因此,我希望某些字段仅取决于用户在先前给定字段上输入的内容。
例如:用户输入项目编号,标题,然后检查“是/否”工程。自从他检查之后,这意味着工程受到了影响,因此出现了许多用户必须填写的字段。
这可能吗:
1)没有VBA
2)使用VBA
没有VBA,可能无法实现。
以VBA为例:
这将打开表单后面的代码。它将您带到该BeforeUpdate事件的默认代码中。我们需要Change事件,所以在右上角将下拉菜单从更改BeforeUpdate为Change。这将为您提供如下代码:
Private Sub Field1_Change()
End Sub
Run Code Online (Sandbox Code Playgroud)
在此处内部,您要检查组合框的值并根据需要隐藏字段:
假设组合框的名称为Field1(您的名称当然会有所不同),则添加一些代码,以便隐藏Field2:
Private Sub Field1_Change()
If Field1.Value = "Yes" Then
Me.Field2.Visible = False
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
请注意,您需要知道所有字段的名称-这是在“其他”选项卡的属性框中(F4)的“名称”字段。您应该给所有字段起一个合理的名称,以便您了解代码中的情况。
对于复选框,请遵循完全相同的过程,但是您可能需要使用该Click事件。只是实验。
样本复选框代码:
Private Sub Check5_Click()
' Note: vbTrue = -1
If Me.Check5 = vbTrue Then
MsgBox ("Ticked")
Else
MsgBox ("Not Ticked")
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
60771 次 |
| 最近记录: |