VBA Textbox删除最后一个字母

时间:2014-06-02 08:13:56

标签: vba word-vba

我有一个程序,当你在文本框中输入时,它会将十进制转换为二进制和向后。为此,我会在文本框发生变化时进行检查,以确定最后一个字符是否为数字(使用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)

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以将检查代码放在beforeUpdate事件中。如果您的测试未通过,您可以执行以下操作:

Cancel = true

所以,把它放在你的else语句中。

根据建议,您还需要致电

Textbox1.Undo