【发布时间】:2016-04-26 14:44:20
【问题描述】:
我正在寻求一些关于我确信是一个选项的功能的帮助,但遗憾的是我不知道如何实现。
基本上,我想要一个从 C21:C50 开始的公式并查找前两个值。根据哪两个是顶部,它将引用 B 列中的名称并将该值填充到另一个单元格(公式所在的单元格)中
如果您查看图片,在主要字段中,我们会选择史蒂夫。其次是艾伦。
这是任何人都可以帮助的吗?我只是迷路了:(
【问题讨论】:
标签: excel excel-formula
我正在寻求一些关于我确信是一个选项的功能的帮助,但遗憾的是我不知道如何实现。
基本上,我想要一个从 C21:C50 开始的公式并查找前两个值。根据哪两个是顶部,它将引用 B 列中的名称并将该值填充到另一个单元格(公式所在的单元格)中
如果您查看图片,在主要字段中,我们会选择史蒂夫。其次是艾伦。
这是任何人都可以帮助的吗?我只是迷路了:(
【问题讨论】:
标签: excel excel-formula
如果处理整数,您可以简单地添加+1/ROW([range]) 以避免双精度数:
=INDEX($B$3:$B$7,MATCH(LARGE($C$3:$C$7+1/ROW($C$3:$C$7),ROW(A1)),$C$3:$C$7+1/ROW($C$3:$C$7),0))
这是一个数组公式,必须用ctrl+shift+enter确认!
但是,对于 5.01 或 4.99 等数字,这可能会失败。对于这种情况,只需将其与 RANK.EQ 结合使用:
=INDEX($B$3:$B$7,MATCH(LARGE(RANK.EQ($C$3:$C$7,$C$3:$C$7,1)+1/ROW($C$3:$C$7),ROW(A1)),RANK.EQ($C$3:$C$7,$C$3:$C$7,1)+1/ROW($C$3:$C$7),0))
这是一个数组公式,必须用ctrl+shift+enter确认!
步骤如图:
第一个表显示了1/ROW 的直接相加,用于LARGE 和MATCH 如果双打存在则获取行(因此INDEX 可以选择正确的行)
第二个表显示了值如何被它们的等级替换为RANK.EQ,然后与第一个表一样处理。
第三个(灰色)表格显示,如果将第一个公式应用于第二个表格会发生什么情况(以说明排名如何混乱)。
对于 Excel 2007,只需将 RANK.EQ($C$3:$C$7,$C$3:$C$7,1) 替换为 RANK($C$3:$C$7,$C$3:$C$7,1)。
如果你还有任何问题,尽管问:)
【讨论】: