为AND函数Excel多个参数

时间:2014-09-22 05:40:07

标签: excel

我需要检查多个单元格,如果所有单元格中的值都是数字,则返回TRUE。 示例:

A2,A4, A5,A8,A12,A16 <p>

目前我正在编写如下公式:

=IF(AND(ISNUMBER(A2),ISNUMBER(A4),ISNUMBER(A5),ISNUMBER(A8),ISNUMBER(A12),ISNUMBER(A16)),"All Numbers","Some not numbers")

有没有办法只用一个ISNUMBER函数来编写公式,并将一组单元格传递给它?

4 个答案:

答案 0 :(得分:1)

如果要检查的单元格位于连续数组中,则可以使用带有isnumber函数的数组公式:

=ISNUMBER(A2:A5),然后按ctrl+shift+enter而不是enter。然后,当您查看单元格时,公式应该用大括号括起来,例如{=ISNUMBER(A2:A5)}

如果单元格不在连续数组中,则无效,

答案 1 :(得分:1)

如果数字只是非零和正数:

=IF(INDEX(FREQUENCY((A2,A4,A5,A8,A12,A16),0),2)=COUNTA(A2,A4,A5,A8,A12,A16),"All Numbers","Some not numbers")

否则:

=IF(SUM(COUNTIF(INDIRECT({"A2","A4","A5","A8","A12","A16"}),{">=0";"<0"}))=COUNTA(INDIRECT({"A2","A4","A5","A8","A12","A16"})),"All Numbers","Some not numbers")

如果您执行此检查的单元格范围是固定的,而不是动态的,那么我们可以将这些缩短为:

=IF(INDEX(FREQUENCY((A2,A4,A5,A8,A12,A16),0),2)=6,"All Numbers","Some not numbers")

或:

=IF(SUM(COUNTIF(INDIRECT({"A2","A4","A5","A8","A12","A16"}),{">=0";"<0"}))=6,"All Numbers","Some not numbers")

此致

答案 2 :(得分:0)

好吧,坦白说..因为你希望他们在这些单元格上输入数字,为什么不用数据验证呢? (可在DATA选项卡上找到&gt;数据验证)。选择十进制,您甚至可以设置最小值到最大值的范围。我个人认为这是一个更健全的解决方案,因为用户将无法输入数字以外的值。

答案 3 :(得分:0)

COUNT函数仅计算数字(不是文本或错误值或逻辑值或空白),因此此公式将提供与具有多个ISNUMBER函数的当前公式相同的结果

=IF(COUNT(A2,A4,A5,A8,A12,A16)=6,"All Numbers","Some not numbers")