У меня есть форма, которая содержит несколько текстовых полей. Я использую следующую процедуру, чтобы проверить, что активное текстовое поле не оставлено пустым. Если это так, то текстовое поле сбрасывается в значение 0, и оно работает
Sub UFDataEntryCheckValue ()
With UF_DataEntry.ActiveControl
If Not IsNumeric(.Value) And .Value <> vbNullString Or UF_DataEntry.ActiveControl.Value = vbNullString Then
MsgBox "Input must be a number and can not be blank"
UF_DataEntry.ActiveControl.Value = 0
End If
End With
Однако есть одно текстовое поле, которое необходимо сбросить до vaklueиз 36, и когда я добавляю следующее утверждение к вышеуказанной процедуре, я получаю ошибку
Dim Ctrl As Control
With UF_DataEntry.ActiveControl
If Not IsNumeric(.Value) And .Value <> vbNullString Or UF_DataEntry.ActiveControl.Value = vbNullString Then
MsgBox "Input must be a number and can not be blank"
'.Value = vbNullString
If Ctrl.Name = "DE_Text_Term" Then
Ctrl.Value = 36
Else: UF_DataEntry.ActiveControl.Value = 0
End If
End If
End With