If you set the initial Text value of the TextBox to 0 (or 1 or whatever
would be the appropriate starting value) and set the Locked property to True
(which I would think would required for the stated use for this TextBox),
then you can eliminate the IsNumeric test completely which would allow your
code to be reduced to this...
Private Sub TextBox1_MouseDown(ByVal Button As Integer, _
ByVal Shift As Integer, _
ByVal X As Single, _
ByVal Y As Single)
With Me.TextBox1
If Shift = 0 Then
.Value = .Value + 1
Else
.Value = .Value - 1
End If
End With
End Sub
And, while admittedly cryptic, this one-liner MouseDown event performs
identically to the above code...
Private Sub TextBox1_MouseDown(ByVal Button As Integer, _
ByVal Shift As Integer, _
ByVal X As Single, _
ByVal Y As Single)
Me.TextBox1.Value = Me.TextBox1.Value - Sgn(Shift - 0.5)
End Sub