【问题标题】:Excel - MAX and MIN value by month for a certain itemExcel - 某个项目的每月最大值和最小值
【发布时间】:2018-02-15 08:02:01
【问题描述】:

有人可以帮我出一个公式吗? 我有一个大型数据库,我正在尝试弄清楚如何获得 2017 年 1 月用于产品 X 的 MAX 数量。

我使用 - AVERAGEIFS(Avg.de.time!E3:E80231;Avg.de.time!A3:A80231;C2;Avg.de.time!C3:C80231;">="&H7;Avg.de.time!C3:C80231;"<="&EOMONTH(H7;0)) 找到了平均值

Column A - Item no.
Column B - Supplier name 
Column C - Order date
Column D - Receive date
Column E - Delivery time (D-C)

我花了太多时间试图弄清楚这一点。 所以我在寻求帮助:)

【问题讨论】:

  • 你在寻找一个数组公式。任何函数都可以使用返回数组的 IF 调用来设置条件(如 SUMIFS、AVERAGEIFS)。
  • This link 应该有帮助!
  • 谢谢你的回答,我会看看我能做什么:)
  • @ArtursIvanovs 如果您还没有找到答案。那么请在帖子中放一些示例数据以便更好地理解。
  • @harun24hr 我不知道怎么在评论区发表格。

标签: excel equation


【解决方案1】:

使用数组公式,您可以使用条件数组表达式重写 AVERAGEIFS 语句,如下所示:

=AVERAGE(
  IF(
    (
      (Avg.de.time!A3:A80231 = C2) *
      (Avg.de.time!C3:C80231 >= H7) *
      (Avg.de.time!C3:C80231 <= EOMONTH(H7,0))
    ) > 0,
    Avg.de.time!E3:E80231
  )
)

我刚刚对代码进行了格式化,以便更容易看到criteriacriteria_ranges 和value_range 出现的位置,但这显然是您单元格中的一长行。

现在可以非常简单地将开头的AVERAGE 替换为MAXMIN 或其他聚合函数,而公式的其余部分保持相同。

=MAX(
  IF(
    (
      (Avg.de.time!A3:A80231 = C2) *
      (Avg.de.time!C3:C80231 >= H7) *
      (Avg.de.time!C3:C80231 <= EOMONTH(H7,0))
    ) > 0,
    Avg.de.time!E3:E80231
  )
)

由于这是一个数组公式,您需要在 Excel 单元格中键入它并按 Ctrl-Enter 使其成为一个数组公式。您可以检查这是否有效,因为大括号 {} 将出现在公式周围。

【讨论】:

  • 谢谢你的天才!一切正常。欣赏一步一步的解释:)
  • 不客气!如果这解决了您的问题,您可以使用答案旁边的勾号将问题标记为已回答。
  • 完成!谢谢。
猜你喜欢
  • 2018-12-21
  • 2023-04-10
  • 1970-01-01
  • 2021-12-10
  • 2022-11-15
  • 2017-10-02
  • 1970-01-01
  • 1970-01-01
  • 2012-03-13
相关资源
最近更新 更多