是否可以使用 Excel 函数通过字符串来评估条件,类似于 COUNTIFS() 和 SUMIFS() 的方式?

是否可以使用 Excel 函数通过字符串来评估条件,类似于 COUNTIFS() 和 SUMIFS() 的方式?

我的问题是,我在单元格中以字符串形式写入了一个条件,例如单元格 A1 中的“>= 50”。我可以轻松地将其与 SUMIFS 和 COUNTIFS 一起使用,因为这些函数将布尔条件作为字符串。因此,COUNTIFS(range, A1) 会告诉我范围内有多少项大于或等于 50。

我也希望能够使用类似于 IF 的函数(只是评估逻辑测试的函数)来实现这一点,但似乎在 IF 函数中评估布尔值的唯一方法是使用实​​际的布尔运算而不是字符串。因此,当应用于数组时,我希望获得与 IF(range >= 50, 1, 0) 等效的结果(因此结果应该是 1 和 0 的范围,具体取决于条件是否满足),但语法应该是类似于 IF_new(range, ">= 50", 1, 0) 的东西。

我的最终目标是在 SUMPRODUCT() 中使用 IF_new(...) 样式函数(就像要包含哪些行的指示器)。因此,我专门寻找一种方法来在函数中使用 ">= 50"(因此布尔值包含在字符串中并以这种方式进行评估,就像在 COUNTIFS 和 SUMIFS 中一样),而不仅仅是 >=50。

不使用 VBA 可以实现吗?提前致谢!

答案1

没有标准方法将=">=50"单元格更改为布尔 IF 语句。对包含=">=50" 可以在 COUNTIF 或 SUMIF 中使用,但是它们通常在 SUMPRODUCT 公式中不能很好地发挥作用。

使用 OFFSET 将某个区域中的每个单元格隔离为单个单元格范围按照 COUNTIF 中的文本标准来提供 SUMPRODUCT 运算中的开/关。

=SUMPRODUCT(COUNTIF(OFFSET(A1, ROW(1:6), 0, 1, 1), A1), B2:B7, C2:C7)

在此处输入图片描述

您可能也可以使用 EVALUATE 和命名范围来实现这一点。

相关内容