用户仅在文本框名称tbID
中输入数值,在我的文件中,该列值保存为数值。但是,如果用户输入 00120
而不是 120
。尝试删除前导零后,120
之前似乎有一个空格。
当我输入Criteria1:="120"
时,它起作用了
tbIDf = Cint(tbID) 'Debug.Print tbIDf gives " 120" and renders my filter criteria to a blank
ActiveSheet.ListObjects("Table1").Range.AutoFilter Field:=IDN, Criteria1:="tbID"
如何删除 120
前面的前导零和 ""
?
最佳答案
这里有一个想法,我会确保进入您的工作表的数据实际上是正确的可用数据。为此,您可以使用:
Trim(Val(tbID))
使用Val
将返回 double 值,忽略非数字值,120
。或者CLng
也有可能返回 long 值。只是不要使用 CInt
,因为不需要使用整数(范围仅从 -32,768 到 32,767)
TRIM
函数将删除前导和尾随空格。
您还可以/应该实现描述的按键事件here以确保仅输入数字值。
关于excel - 从文本框VBA中删除前导零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56785670/