所以我必须优秀的表格。每张表都是这样的:
名称值
Bob 1234
莎莉2343
乔564564
基本上我有300个名字及其值。我有第二张具有相同名称但具有不同值的表格。我想知道在多张表中获取每个人姓名的平均值的最简单方法。我现在只有两张纸,但我希望将来可以做更多。
答案 0 :(得分:2)
如果所有工作表中的位置相同,这很简单:
=AVERAGE( Sheet1!A1, Sheet2!A1, Sheet3!A1 )
或
=AVERAGE( Sheet1:Sheet3!A1 )
但是,如果位置不同,则必须使用查找类别中的公式。
答案 1 :(得分:0)
Bob是否在每张纸的同一行?那些没有鲍勃的床单吗?鲍勃会多次出现吗?
无论哪种方式,这都可能更适合存储在数据库中。 Excel仍然可以从数据库中获取内容并显示为spreasheet,但是在数据库中,根据需要进行平均操作会更容易。
但是,如果必须使用Excel,那么您需要使用搜索功能在每个工作表中查找Bob
,然后获取其相关值。 =LOOKUP()
可能对搜索/查找部分有帮助,但您仍需要为每个工作表执行此操作。
答案 2 :(得分:0)
假设您有3张相同名称的纸张,位于相同的位置。插入第4张表格,复制这些名称。在结果列中,键入=AVERAGE(Sheet1:Sheet3!A2)
,然后将该公式复制下来
完成。
如果您打算稍后添加更多工作表,请保留一张始终为空的特殊工作表,并制作公式:=AVERAGE(Sheet1:Special!A2)
。
然后您可以在特殊情况下插入新表格,并且需要编辑平均值。
答案 3 :(得分:0)
使用数组公式。在第一个单元格中输入以下内容,将“Bob”替换为“Bob”条目的单元格引用,然后按CTRL + SHIFT + ENTER:
= SUM((name_col2='Bob')*(value_col2))/sum((name_col2='Bob')*1)
答案 4 :(得分:-1)
Excel中没有简单的方法。你必须编写VBA代码。您需要定义计算所需的所有工作表,遍历所有名称并将它们放在一个数组中。
// [名称,数量,表格数量] [[“Bob”,1234,1],[“莎莉”,2343,1],......]
对于每个工作表中的每个名称,您需要检查它是否包含在数组中。
如果是这种情况,请增加数量和计数,否则使用[名称,数字,1]添加新元素
最后通过你的数组并输出Name和Number / Count到一个新表。
你需要一些基本的编程技巧。