0

我有一个包含两个巨大列的数据表,它们都有整数值。一列中的值范围为 1-11,另一列中的值范围为 0-22。这些值不会以任何方式排序。在单独的工作表(同一文件)中,我想显示每一步的平均值。

例子:

A   B
-------
2   3
4   0
6   2
2   9
4   12
1   9
1   18

在另一个选项卡中,我想看到:

Values A   Average B   Values B   Average A
--------------------------------------------
 1          14          0          4
 2          6           2          6
 4          6           3          2
 6          2           9          2
                        12         4
                        18         1

我想用一个函数来解决这个问题,该函数看起来遍历每列的值,并在该循环期间取列中与该值相对应的行的平均值。手动,这太麻烦了。

我尝试与之合作,AVERAGEIF但没有任何成果。

4

3 回答 3

2

尝试:

=AVERAGEIF('analyse-logs'!A:A;A1;'analyse-logs'!B:B)

问候

于 2016-02-11T11:15:01.743 回答
0

如果您对构建数据透视表感到满意,则可以在数据上构建数据透视表。当 A 是行字段时,在值中使用 B 的平均值。应该给你结果。反之亦然应该产生结果的右半部分。

如果您想同时查看它们,一个选项卡可以在行字段中使用 A 和在值字段中使用 B 的平均值进行透视。您可以在另一张工作表中构建另一个数据透视表,其中 B 在行字段中,A 在值字段中的平均值。

如果您想要并排的结果(第一部分的 2 列和第二部分的接下来的两列),您可以让数据透视表彼此相邻放置(移动数据透视表)因为源数据是将是相同的,如果基础数据有任何变化,一个简单的 Refresh Pivot (Alt+F5) 应该更新这些值。

(如果您以前没有这样做过)如何在值字段中获取平均值:更改数据透视表中字段的汇总函数

于 2016-02-11T10:07:37.273 回答
0

您可以尝试AVERAGEIFS改用。这对我有用。

=IFERROR(AVERAGEIFS('analyse-logs'!B:B, 'analyse-logs'!A:A, A1), 0)

上面的代码适用于 A 值。A1 是指引用您的值的单元格(或者您可以像在原始函数中那样使用 A=1 )。我IFERROR在这种情况下使用了没有匹配的引用将返回 0 作为平均值。

于 2016-02-11T10:31:07.913 回答