【问题标题】:Using AVERAGEIFS to Populate a Table in Excel使用 AVERAGEIFS 在 Excel 中填充表格
【发布时间】:2023-03-21 03:01:02
【问题描述】:

更新 2:我将包含另一个屏幕截图。我猜这可能就是我收到错误的原因。

更新。换一种说法,您可以这样说:“计算满足以下条件的所有实例的 J 列和 K 列的平均值(来自第一个屏幕截图):K 列小于或等于 1638,M 列是“1”(耀斑开启),现在是 2016 年 1 月 1 日,您是当天的第一个 3 小时块(0:00 - 2:59)。然后对所有其他 3- 做同样的事情一天中的几个小时。然后在 1 月 2 日重新做一遍,依此类推。为什么我一直收到“#VALUE!#

这个会很复杂,所以我会尽力分解它。我要问的不是 100% 必要的,但它会大大加快这个过程。下面是两个屏幕截图,有助于说明发生了什么。

在第一个屏幕截图中,行扩展了大约 200,000 行左右。 A 列是月份,B 是日期,C 是时间,D 是我创建的列,它告诉您您当天所处的 3 小时块。例如,一天中有 8 个、3 小时的区块(0:00-2:59、3:00 - 5:59 等)。因此,在屏幕截图中显示“1”的位置,当您滚动浏览工作表时,它会发生变化以反映正确的 3 小时块。

在第二个屏幕截图中,您会看到我已经为 1 月份设置了一个表格。这是我一直在尝试使用AVERAGEIFS 公式:

例如,如果您查看单元格 B4,那么应该去那里的内容如下:

**计算列 K 值为 1638 或更低、M 列等于“1”、D 列(时隙)等于所有位置的 J 列和 K 列的平均值(来自第一个屏幕截图)为“1”,日期为第一天**

如果我能弄清楚如何使其正常工作,我想简单地将公式应用于表格中的其他单元格。所以,第二个屏幕截图上的 C5 也应该是平均值,但它应该是 D 列等于“2”,天等于“1”,K 列的值是 1638 或更低,M 列仍然等于“1”。这有意义吗?

我认为第二个屏幕截图中的单元格 B4 可能是这样的:

=AVERAGEIFS(E6:K262024, L6:L262024, "<=1638", M6:M262024, "=1", A6:A262024, "=January", B6:262024, DAY(B6:B262024)=1, D6:262024, "=1")

是的。这真的很激烈。我从中得到的只是“#VALUE!”,这根本没有帮助。对此的任何建议都会令人惊叹,并且可能是每个人的学习机会,因为这是使用此功能的一个非常复杂的示例。

【问题讨论】:

  • 把日期放在一个帮助列中,就像你有月份一样,并在你的averageifs()中使用它。你不能像这样在平均值中使用 Day()。
  • 是的,我也这样做了,而且我不断收到愚蠢的“#VALUE!”错误。我唯一能想到的可能是因为在 J 和 K 列中有一些条目(不是我生成的)不是数字。那里有些地方写着“-OVER”。我假设这可能是导致问题的原因。

标签: excel average


【解决方案1】:

“average_range”输入应该是单列。我建议尝试将此范围缩小到每个 MIN 和 MAX 的单列,然后将两者取平均值。

另外,我在您的原始公式中看到您的 D 列(时隙?)的标准范围缺少 D。D6:262024

【讨论】:

  • 将此作为陈述而非问题,您就有了答案,而且可能是正确的答案。我自己也注意到了。
  • 它不必是单个列,因为我能够使其更早地以更小的规模工作。不过,当我早些时候这样做时,我只是告诉范围查看值将成为标准所说的地方。现在我正在扩展以包括整个工作表,其中“日期”和“时间段”等内容发生变化并且它搞砸了。我认为是因为在 J 和 K 列中有一些地方写着“-OVER”而不是数字。这可能是导致它失败的原因。
  • @Ryan_C no Averageifs() 将自动跳过任何文本,根本不考虑它们。此外,我只是尝试了一个简单的 AverageIFS() 并使用多列,它失败了。
  • 有趣。好吧。这只会变得越来越复杂。我可以手动完成这一切,但我试图集思广益,看看是否有办法更快地完成。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-02-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-31
相关资源
最近更新 更多