首页 > 解决方案 > 如何根据单元格是否为数字来输出不同的关键字?

问题描述

O9 包含一个数字或一个单词。

我做了这个公式

=IF(ISNUMBER(O9),IF(O9<=74),"Alpha",IF(O9>=75),"Bravo"),IF(AND(O9<=65,M9="C","Charlie",IF(AND(O9<=65,M9="D","Delta",IF(AND(O9<=65,M9="E","Echo"

我想要发生的是,如果 O9 的内容是一个数字,则输出将是 Alpha(如果 O9<=74)或 Bravo(如果 O9>=75)。如果 O9 的内容不是数字,则输出将是 Charlie、Delta 或 Echo。

我想我可能放错了一些逗号或括号并在它们上犯了错误,这使我的错误值(对于"IF(ISNUMBER)")无法识别。

这是错误消息:

这个公式有问题。

如果我尝试编辑括号位置,错误消息会显示

有太多的争论。

Excel新手,抱歉这个问题。除了基本的公式/命令(总和,平均值等)之外,我不太了解其他公式/命令。提前感谢那些会回答的人!

标签: excelexcel-formula

解决方案


将其分解为 3 个步骤。第一步“是数字吗?”

=IF(ISNUMBER(O9), IS_A_NUMBER, NOT_A_NUMBER)

下一步,对于IS_A_NUMBER,“小于 75?” (这将确保74 和 75之间的数字给出一个值 - 例如 74.1 - 并且无需将 <=74 和 >=75 作为单独的条件)

IF(O9<75,"Alpha","Bravo")

把这些步骤放在一起:

=IF(ISNUMBER(O9), IF(O9<75,"Alpha","Bravo"), NOT_A_NUMBER)

最后,将“C”、“D”和“E”与“Charlie”、“Delta”和“Echo”匹配NOT_A_NUMBER

VLOOKUP(O9, {"C", "Charlie"; "D", "Delta"; "E", "Echo"}, 2, False)

并将所有内容放在一起:

=IF(ISNUMBER(O9), IF(O9<75,"Alpha","Bravo"), VLOOKUP(O9, {"C", "Charlie"; "D", "Delta"; "E", "Echo"}, 2, False))

推荐阅读