如何从多个工作表中单独选择数据

时间:2015-01-13 18:35:53

标签: excel excel-formula

我确信它可以完成并可能导出到Access,但我只是想知道是否有人对我遇到的问题有任何建议。

我有一个充满棒球统计击球和投球的excel文件。每年都有不同的工作表或2015年击球和2015年投球。这已经做了多年。

我想制作一个总计工作表,其中包含每个玩家的总数,但只显示在一行上。

  • 每年都有一些球员不再参加球队比赛,而且每年都有一些新球员出现。而不是单独进行并尝试手工完成,这将花费很长时间,我想在所有选项卡中搜索“John Smith”的方式,并计算他的总数以进行击球和投球。

    < / LI>
  • 每个工作表都有标题,例如At Bats,Hits,Doubles,Triples,HR,RBI,ETC。

这更多是为了休闲,而不是需要完成的事情。如果有人有任何建议,我只想这样做。

enter image description here

2 个答案:

答案 0 :(得分:0)

如何将每个玩家名称复制并粘贴到单独的工作表中,然后删除重复项。之后,你可以根据球员的名字做一个sumif。第一个将花费几分钟,但在那之后,您可以使用绝对引用向下滚动它们。

答案 1 :(得分:0)

我看到你正在使用表格,而不是优秀的基本cheets,这将使以下更容易。

我的解决方案的要点是使用嵌套在sum()中的Index(Match()),或者你想要测试的其他内容,平均值,标准偏差等。它类似,但比vlookup更强大,就好像表格的结构发生变化一样,公式也会相应地进行编辑。如果没有关于文件结构的更多详细信息,那将是:

=SUM(INDEX(batting2015[PA],MATCH(outputtable[@[Name]], batting2015[Name])),INDEX(batting2014[PA],MATCH(outputtable[@[Name]], batting2014[Name])),... etc)

第一步是理解INDEX(MATCH())的输出。 INDEX()将返回范围中的参考值。 MATCH()查看特定值的值向量。通过使用MATCH()来找到你的玩家,并将它与INDEX()配对以返回他们的结果(击球平均值,在底线等),然后你可以从后续表中加总这些值。 表格的形式与所有其他表格相同,玩家在垂直方向上有不同的记录,而统计数据在水平方向上是不同的字段。这里的好处是你只需要为每个字段制作一个公式,然后如果你在一个新的Excel表对象中构建它,它将自动复制。 值得注意的是,除非您指定匹配为“完全”,否则可能会错误地匹配可能具有相似名字的玩家。通过将MATCH中的匹配类型参数设置为0 MATCH(lookup_value,lookup_array,MATCH_TYPE)。

另外,看到你有桌子,我假设你故意使用结构化参考。如果不是,this is a quick primer