从Excel中的字母数字列表中查找最后4个最大数字

从Excel中的字母数字列表中查找最后4个最大数字,excel,excel-2016,Excel,Excel 2016,我正在写一张表格,里面记录了我在机器上使用的墨盒 每台机器每次使用4个盒带,在数据表中标记为“正在使用”。现在,我试图在“使用中的盒带”表中分别获取每台机器的所有4个“使用中的”盒带ID。我尝试了很多公式,但只得到了最大值。请帮我做这个。此外,我不能使用VBA在我的工作表只需要公式解决方案。提前感谢。在C4中复制并向下尝试此公式 =索引($B$10:$B$29),聚合(14,6,(行($B$10:$B$29)-行($B$10)+1)/($C$10:$C$29=$A4)/($D$10:$D$29=

我正在写一张表格,里面记录了我在机器上使用的墨盒


每台机器每次使用4个盒带,在数据表中标记为“正在使用”。现在,我试图在“使用中的盒带”表中分别获取每台机器的所有4个“使用中的”盒带ID。我尝试了很多公式,但只得到了最大值。请帮我做这个。此外,我不能使用VBA在我的工作表只需要公式解决方案。提前感谢。

C4
中复制并向下尝试此公式

=索引($B$10:$B$29),聚合(14,6,(行($B$10:$B$29)-行($B$10)+1)/($C$10:$C$29=$A4)/($D$10:$D$29=“正在使用”),列($C4:C4))

AGGREGATE
函数查找MC#匹配且盒带正在使用的第k个最大行,然后
INDEX
函数查找该行的ID<代码>列函数在复制时增加k,因此从最后一个开始得到最后4个

如果列A总是从1开始,并且增量为1,则可以稍微缩短到该版本


=索引($B$10:$B$29,总计($14,6,$A$10:$A$29/($C$10:$C$29=$A4)/($D$10:$D$29=”),列($C4:C4))

非常感谢先生。我真的很感谢你的帮助。它就像预期的那样工作。非常感谢你。