Excel:input数据validation只允许数字
有没有办法让用户input字母字符,我只需要数字?
我将不胜感激任何帮助。
正如已经提到的,它可以通过数据validation来实现… 但是有一个问题。
第一种方法 :数据validation
- ALT + d + L
- 允许:整数
- 数据:大于( select你想要的 )
- 最低:0
CATCH:但数据validation不会检查该值是否从其他某个单元复制。 也就是说,如果我从不同的单元格复制alpha值并粘贴/粘贴特殊(值)它在单元格上, 它会接受它 。 它不会限制我。
因此第二种方法 :VBA
Private Sub Worksheet_Change(ByVal Target As Range) Const CELL_ADDRESS = "$A$1" 'change cell If Target.Address = CELL_ADDRESS Then If Not IsNumeric(Target.Value) Then MsgBox "Wrong value", vbCritical, "666bytes" Target.Value = vbNullString End If End If End Sub
编辑 :对于一个范围:
Private Sub Worksheet_Change(ByVal Target As Range) Const CELL_ADDRESS = "$D$2:$E$4000" 'change range If Not Application.Intersect(Target, Range(CELL_ADDRESS)) Is Nothing Then If Not IsNumeric(Target.Value) Then MsgBox "Wrong value", vbCritical, "666bytes" Target.Value = vbNullString End If End If End Sub
将这个VBA代码插入到你要实现这个的表单模块中,然后改变CELL_ADDRESS。 如果你想使用Worksheet_Change事件,你可以做很多事情,所以请按照你喜欢的这个代码玩。 希望这可以帮助! 🙂
假设input单元格是A1
在数据validation菜单中
允许:自定义
公式:= isnumber(A1)