Excel:input数据validation只允许数字

有没有办法让用户input字母字符,我只需要数字?

我将不胜感激任何帮助。

正如已经提到的,它可以通过数据validation来实现… 但是有一个问题。

第一种方法 :数据validation

  1. ALT + d + L
  2. 允许:整数
  3. 数据:大于( select你想要的
  4. 最低: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)