Часто, для того, чтобы разрешить пользователю в текстовом поле вводить только цифры, используется проверка вводимого текста. Лучший способ сделать такую проверку, это использовать событие Change(). Однако, функция IsNumeric() имеет некоторый недостаток. Например, если использовать простую процедуру:

Код:
Private Sub Text1_Change()
If Not IsNumeric(Text1.Text) Then
Text1.Text = ""
End If

то если пользователь введёт число -333, то для элемента управления это не будет являться числом, так как начинается с тире. Следующая функция исправляет этот недостаток:

Код:
Private Sub Text1_Change()
If Not ValidateNumeric(Text1.Text) Then
Text1.Text = ""
End If
End Sub

Private Function ValidateNumeric(strText As String) _
As Boolean
ValidateNumeric = CBool(strText = "" _
Or strText = "-" _
Or strText = "-." _
Or strText = "." _
Or IsNumeric(strText))
End Function