这是我的问题: -我有2张纸。 (A和B)。 -2格2格(SheetA!A和SheetB!A) -平均6列(B-C-D-E-F-G)
SheetA!A1和SheetB!A1如果两者匹配,则平均值应为单元格B1-C1-D1-E1-F1-G1)。
每张纸上都有几千行。 SheetA是所有数据所在的“数据表”。 SheetB就像我的工作簿一样,所有统计信息都在这里。
我尝试了此功能:
=AverageIf(SheetA!$A:$A;A2;SheetA!B:G)
我也尝试过
=average(index(SheetA!$B:$G;MATCH($A2;SheetA!$B:$G;0)))
似乎也不起作用。但是我知道我可能会用这个公式犯错。
该函数只给我B单元格中的值,而不计算同一行中6个单元格的平均值。 Text1和Text5是在SheetB中与SheetB匹配的文本
A B C D E F G
Text1 1 2 3 1 2 3
Text2 2 3 1 1 1 1
Text3 1 1 2 1 2 2
Text4 3 5 2 4 5 1
Text5 4 2 2 2 2 2
我想要在SheetB上显示的内容:
A B
Text1 2
Text5 2.33
我先前显示的公式为我提供了以下信息,它不计算平均值,仅为我提供第一个值:
A B
Text1 1
Text5 4
它与SheetA和SheetB中的Text1匹配右行。
答案 0 :(得分:0)
好吧,如果您拥有我显示的数据,这将起作用。如果没有,则需要调整“匹配”部分以确保该公式有效。
SheetA中的数据是这样的,从第1行开始(这很重要):
我的公式在B列的SheetB中,如下所示:
=AVERAGE(INDIRECT("SheetA!B"&MATCH(A1;SheetA!A:A;0)&":G"&MATCH(A1;SheetA!A:A;0)))
我明白了:
工作原理:
如果找不到任何内容,则不会进行错误处理,但如果需要,只需添加IFERROR之类的内容即可。
此外,MATCH仅在匹配为100%准确时才起作用。在SheetA的示例中,您有Text1
,但在SheetB中,您键入了Text 1
,这是不相等的。确保输入正确。
希望您可以根据自己的需要对此进行调整。