ISNUMBER返回只有数字的单元格的FALSE
在单元格A1中,例如,我有产品代码BW224
在B1中,我只有=RIGHT(A1,3)
因为我只想要数字。 公式的结果是224
在C1中,我有ISNUMBER(B1)
,它返回FALSE
为什么是这个,我怎么能解决它?
这是一个过于简单的例子,但是如果我能够绕过上述方法,我可以适应它。 我的实际表单需要(伪代码):
取目标单元格最右边的三个数字字符,并将它们输出到当前单元格,如果目标单元格包含像“zzzzzz”这样的垃圾或除了正确的产品代码之外的任何东西(如A1),则公式的输出需要为空或0
在C1
上使用=ISNUMBER(VALUE(B1))
另外检查=ISNUMBER(VALUE(A1))
,这将是FALSE
因为单元格可能显示为224
但单元格内容为=RIGHT(A1, 3)
,这不是数字。
您可以在ISNUMBER
使用VALUE
来检查单元格显示的内容,而不是内容
=ISNUMBER(VALUE(B1))
演示。
RIGHT公式返回一个string。 如果有值,则使用公式VALUE将该string转换为值。 在这种情况下:
- 第一个选项。 在单元格B1中,使用
=VALUE(RIGHT(A1,3))
- 第二个选项。 在单元格C1中,使用
=ISNUMBER(VALUE(B1))
我希望它有帮助。
我认为其他提议不回答这个问题:
=IFERROR(1*RIGHT(A1,3),0)