My code below seeks to validate the InputBox entry. It however returns all previous wrong entries as well. For example, if 5, 3, 2 are entered, the Msgbox delivers 2, 3, 5 in that order. Why is there such implicit static attribute? And how can I cure the problem without resorting to GOTO labelling?

Sub TestValidate()
x = InputBox("Enter 2")
If x <> 2 Then TestValidate
MsgBox x
End Sub

DM