【问题标题】:SMALL(SUM(IF... when there are Duplicate Values and Multiple CriteriaSMALL(SUM(IF... 当存在重复值和多个条件时
【发布时间】:2015-07-29 02:30:33
【问题描述】:

我正在建立一个庞大的足球统计数据库。从 1970 年至今,一张表(“统计数据”!)粘贴了每年的统计数据。表“年”!有一份历史上每位 NFL 球员的名单,包括他们的新秀年、最后一年和职业生涯长度。

在“统计”!中,我想将玩家的“联盟中的年份”与他们的统计行配对。假设一名球员从 1991 年开始。在他 1994 年的统计数据行中,“联盟中的年份 #”列应显示为“4”,因为这是他在 NFL 的第四年。

'=if($I2="RB",sum(-(index(Years!$D:$D,match($G2,Years!$B:$B,0))),$F2,1),"")'

Stats!I : 位置(分成不同的工作簿文件,以帮助加载时间) Stats!G : 玩家姓名 Stats!F :此统计行的年份 Years!B : 玩家姓名 年!D:新秀年

问题是,“年代”中有大量重复的 NFL 球员姓名!床单。所以这个公式绘制了第一场比赛,提供了一些假阴性和大量假阳性(1970 年是梅尔法尔在 NFL 的第 -18 年,鲍勃戴维斯的第 33 年)。

我认为最简单的方法是创建一个 SMALL 函数来检索最小的 SUM(Stats!F:F,-Years!D:D,1),包括匹配玩家姓名的 IF 或 MATCH(或两者) Years!$B:$B with Stats!$G2,同时也确认 Years!$D:$D

【问题讨论】:

  • 我会改写你的问题:寻找姓名匹配的最高职业起始编号,并且职业结束编号高于或等于给定年份并且姓名匹配。
  • 加上起始年份小于或等于给定年份。
  • 是的,谢谢,user3819867.... -Years!D:D,1),包括 IF 或 MATCH(或两者)以匹配玩家名称 Years!$B:$B 与 Stats!$G2,同时还确认 Years!$D:$D

标签: excel sum duplicates match


【解决方案1】:

你可以试试这样的数组公式

=if($I2="RB",$F2-small(if(年!$B:$B=$G2,if(年!$D:$D

用 CTRL+SHIFT+ENTER 确认

【讨论】:

  • 感谢巴里胡迪尼!但看起来这只能找到最小的职业开始年份......目标是,就像user3819867所说,确认1)名称匹配,2)新秀年份
  • 这会匹配名称。我将进行更改,以使年份必须小于当前年份
  • 巴里,我试过 '=if($I2="RB",$F2-small(if(Years!$B:$B=$G2,if(Years!$D:$D
  • 一个包含整列引用的数组公式??!
  • 您是否使用 CTRL+SHIFT+ENTER 以便在公式周围得到花括号?如果是这样,那么#NUM!错误意味着您没有匹配的有效行 - 这可能吗?正如 XOR LX 所暗示的那样,最好将范围限制为您拥有的实际数据,否则公式会很慢
猜你喜欢
  • 2018-08-12
  • 1970-01-01
  • 2015-01-23
  • 1970-01-01
  • 1970-01-01
  • 2015-03-04
  • 1970-01-01
  • 2019-04-30
  • 1970-01-01
相关资源
最近更新 更多