【问题标题】:AverageIFS with multiple IF criteria from the same column具有来自同一列的多个 IF 标准的 AverageIFS
【发布时间】:2020-12-11 11:32:30
【问题描述】:

我尝试在这里寻找解决方案,但遗憾的是我找不到与我相关的足够类似的问题。我有一个相当长的 AVERAGEIFS 公式:

=AVERAGEIFS(Hoofdtab!AE2:AE19883;
    Hoofdtab!V2:V19883;"="&'Statistics Query'!F4;
    Hoofdtab!V2:V19883;"="&'Statistics Query'!F5;
    Hoofdtab!V2:V19883;"="&'Statistics Query'!F6;
    Hoofdtab!V2:V19883;"="&'Statistics Query'!F7;
    Hoofdtab!I2:I19883;">="&F8;
    Hoofdtab!I2:I19883;"<="&F9;
    Hoofdtab!X2:X19883;"="&F10)

以下屏幕截图应该更清晰:

参考列表中有很多“产品”条目。我想这样做,以便我可以一次过滤两个/三个/四个(单元格 F5 / F6 / F7)产品。目前我使用星号作为“一切都很重要”的标志。在示例中,我只使用一种产品,这很有效。但是,一旦我在单元格 F5 中添加第二个产品,我就会得到 #DIV/0!错误。有谁知道我该如何解决这个问题?

我正在使用 Excel 2019

亲切的问候,

VHes

【问题讨论】:

  • 您收到DIV/0,因为您的 AVERAGEIFS 函数要求每个条目都满足所有条件。由于您的标准范围不能同时等于 2 个产品,因此它将失败。你有SEQUENCE 功能吗?
  • 我明白了,这实际上是很合乎逻辑的。不,我似乎没有序列功能。它有什么作用,我从哪里获得它(我假设的其他版本的 excel 或加载项?)感谢您的回复 Ron!
  • SEQUENCE 在 O365 的 Excel 中可用。 Online Excel HELP 比我在评论中更好地解释了它的功能。

标签: excel formula average excel-2019


【解决方案1】:

要解决您的问题,您需要返回一个数组,您可以从中返回相关值。 AVERAGEIFS 要求所有条件都为真。但是您似乎希望多个条件中的一个OR为真,并结合另一组条件,其中两个条件必须始终为真。

这是一个示例,您可以将这些原则应用于您的实际问题。

给定以下数据:

假设

  • 我们要选择任何可能包含a, b, and/or c 的列表
  • 我们想要包含一个日期范围。
  • 我们希望对value 列中的相关值进行平均
  • 我们将其命名为
    • 字母列critRng1
    • 日期列critRng2
    • 值列avgRng

我们有一个包含暴击值的范围(命名为crit1 我们有一个范围,其中包含范围的开始日期和结束日期(DATE1DATE2

对于本练习,我们将假设

  • crit1注意空单元格

和我们的约会:

公式:=1/(critRng1=TRANSPOSE(crit1))*1/(critRng2&gt;=DATE1)*1/(critRng2&lt;=DATE2)*avgRng

将返回一个值数组

请注意,我们希望平均的期望值存在,以及一堆 #DIV/0! 错误。

由于AVERAGE函数会忽略文本,我们可以使用IFERRORAVERAGE得到答案:

=AVERAGE(IFERROR(1/(critRng1=TRANSPOSE(crit1))*1/(critRng2>=DATE1)*1/(critRng2<=DATE2)*avgRng,""))

或者,更短一点:

=AVERAGE(IFERROR(1/((critRng1=TRANSPOSE(crit1))*(critRng2>=DATE1)*(critRng2<=DATE2))*avgRng,""))

对于上述条件,公式将返回45, 4 and 3的平均值)

【讨论】:

  • 抱歉回复晚了,我病得很重。一旦我康复,我会回复你的。非常感谢您的意见。
  • @VHes 没问题。希望您早日完全康复。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-12
  • 1970-01-01
  • 1970-01-01
  • 2022-01-12
相关资源
最近更新 更多