MS Access VBA,仅在所有必需的文本框包含有效数据后启用按钮的有效方法

问题描述 投票:0回答:1

我的代码正在运行,但我只是想知道是否有更有效的方法来实现相同的效果。

我有一个表格的布局:

为了使记录创建过程万无一失,我希望只有在“注释”文本框/组合框包含一些有效数据之后才能启用“保存并清除字段”按钮。

文本/组合框称为txtBatteryID,cmbModelNumber,cmbChemistryType,txtSpecVoltage,txtSpecCapacity。

我的代码如下

Private Sub EnableSaveBtnCheck()
'this checks if the required fields contains valid data, if so, enables the save button.
    If Me.btnSaveAndCLear.Enabled = False Then
        If IsNull(txtBatteryID) = False And IsNull(cmbModelNumber) = False And IsNull(cmbChemistryType) = False And IsNull(txtSpecVoltage) = False And IsNull(txtSpecCapacity) = False Then
            Me.btnSaveAndCLear.Enabled = True
        End If
    End If
End Sub

正如您所看到的,我使用AND的最直接方式是在IF语句中组合所有必须条件。在每个文本/组合框的After_Update()事件中调用此子。像这样:

Private Sub cmbChemistryType_AfterUpdate()
    Call EnableSaveBtnCheck
End Sub

最后,我的问题是:是否有更有效的方法来设置“所有文本/组合框需要在其中有效的东西”?是否有更复杂的方法来检查是否满足条件(类似于表单上的事件)?

ms-access access-vba ms-access-2016
1个回答
0
投票

添加这5个字段的值。如果它们中的任何一个为Null,则总和将为Null。所以你只需要拨打IsNull()一次。

If IsNull(txtBatteryID + cmbModelNumber + cmbChemistryType + txtSpecVoltage + txtSpecCapacity) = False Then
© www.soinside.com 2019 - 2024. All rights reserved.