Excel AND 函数的多个参数

  • 本文关键字:参数 AND 函数 Excel 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函数的公式,该函数将单元格数组传递给该函数?

如果数字永远不是零和正数:

=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")

问候

如果要

检查的单元格位于连续数组中,则可以将数组公式与isnumber函数一起使用:

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

但是,如果单元格不在连续数组中,这将不起作用

坦率地说,既然您希望它们在这些单元格上输入数字,为什么不直接使用数据验证呢?(可在"数据验证">"数据"选项卡上找到(。选择十进制,您甚至可以设置最小值到最大值的范围。我个人认为这是针对您的情况的更合理的解决方案,因为用户将无法输入数字以外的值。

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

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

最新更新