【问题标题】:Excel (Average, Std déviation, ...) - with values every Nth columnsExcel(平均值,标准偏差,...) - 每 N 列都有值
【发布时间】:2021-03-06 08:56:05
【问题描述】:

这是我的数据集:

我有许多测试(测试 1 和测试 2),并且对于每个测试,都有 4 个条件(C1、C2、C3 和 C4)。 我正在寻找一种解决方案,在 Excel 上按条件从测试中选择数据。所以这里每四列选择一次。

(这里用 Crtl 很容易选择,但我的真实数据集有 40 个测试和大约 100 个列值)

我已经搜索并尝试了许多在 Internet 上找到的解决方案(例如:How to average every nth column in Excel?),但它仅适用于逐行的一个值。这里我想要完整的列。

我还尝试了在 Excel 上使用 VBA 的解决方案(此处:https://trumpexcel.com/select-every-third-row/),但它只会选择,我无法将选择放入公式中以获得平均值、标准偏差等。

那么,有可能做我需要的吗?还是我必须手动重新组织我的数据?

【问题讨论】:

  • 假设数据在A:H列,数组公式:例如=AVERAGE(IF($A$2:$H$2="C1",$A$3:$H$100))
  • @Rory 谢谢。我对其进行了测试,但它占用了所有列。仅在第一种情况 (A2) 上验证条件 (="C1")。如果 A2 = "C1" :平均值是一切。如果 A2 != "C1" :平均值 = 0。
  • 那你没有用 Ctrl+Shift+Enter 数组输入公式。
  • @Rory 好的,我是 Excel 的真正菜鸟。效果很好,非常感谢!
  • 不用担心 - 我已经添加了这个答案,并澄清了使用这些键输入它。 :)

标签: excel conditional-statements average multiple-columns selection


【解决方案1】:

假设数据在A:H列,数组公式:

=AVERAGE(IF($A$2:$H$2="C1",$A$3:$H$100))

例如,必须使用 Ctrl+Shift+Enter 输入,而不仅仅是 Enter。

【讨论】:

  • 非常感谢!在这里,如果我想排除等于零的值(不在我的示例中),我该怎么做? (我尝试使用像=AVERAGEIF(IF($A$2:$H$2="C1",$A$3:$H$100);"<>0") 这样的公式,但它不起作用:/ 编辑:经过多次测试,您的公式似乎已经排除了零,是真的吗?
  • 不,如果您需要排除 0(和空白单元格),请使用:=AVERAGE(IF($A$2:$H$2="C1",IF($A$3:$H$100<>0,$A$3:$H$100)))
  • 好的,谢谢!这有点奇怪,因为当我使用第一个公式删除一些 0 进行测试时,我的平均值没有改变。但我会采用你的第二个(它给了我不同的结果,即使两个公式似乎反应相同,我承认肯定不是!)
  • 第一个会将空白单元格视为0,因此如果您只是删除一个0,结果不会改变。
  • 哦,好的,我明白了。很高兴能更好地了解 Excel 的工作原理。祝你有美好的一天!
猜你喜欢
  • 1970-01-01
  • 2015-03-05
  • 1970-01-01
  • 2021-12-11
  • 2018-03-08
  • 2021-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多