我有一个程序,当你在文本框中输入时,它会将十进制转换为二进制和向后。为此,我会在文本框发生变化时进行检查,以确定最后一个字符是否为数字(使用Mid()函数。)
我的问题是,如果有办法从字符串中删除最后一个字符,而不是在最后一个字符是例如字母时发送程序和错误消息。
这是我用来确定最后一个字符是否为数字的原因:
LastChar = Mid(TextBox1.Text, Len(TextBox1.Text), 1)
If IsNumeric(LastChar) Then
'Do the convert stuff here
Else
TextBox2.Text = "ERROR: You must fill in a decimal number"
End If
我在互联网上浏览了很多,但我发现的所有方法都不适用于我必须用于学校的VBA。 (比如我!TextBox1.Undo)
提前致谢。
答案 0 :(得分:0)
您可以将检查代码放在beforeUpdate事件中。如果您的测试未通过,您可以执行以下操作:
Cancel = true
所以,把它放在你的else语句中。
根据建议,您还需要致电
Textbox1.Undo