Проверить текстовое поле в Excel VBA - PullRequest
1 голос
/ 01 ноября 2019

У меня есть форма, которая содержит несколько текстовых полей. Я использую следующую процедуру, чтобы проверить, что активное текстовое поле не оставлено пустым. Если это так, то текстовое поле сбрасывается в значение 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...