我正在尝试使用下面的公式返回最低 3 个值的列标题,每个单元格中有一个用于查找。但如果存在具有相同值的条目,它只会多次返回第一个值。
索引($F$1:$CD$1,0,MATCH(小(范围,x),范围,0))
有什么方法可以改变它以获得我需要的输出,或者如果存在重复,是否必须手动检查数据?
例如,我的输入有苹果、香蕉和橙子,均为 4,我的公式将仅返回苹果 3 次。理想情况下,我需要他们归还苹果、香蕉、橙子。
谢谢
我明白了。问题在于,如果您将 3 作为参数提供给 SMALL,则它会返回第三个最小值,而不是三个最小值。但你可以写{1,2,3}来得到后一个结果。
如果您希望标题位于彼此下方,请将此数组公式(Ctrl + Shift + Enter)放入其中,例如A1:A3:
=TRANSPOSE(INDEX($F$1:$CD$1,0,MATCH(SMALL($F$2:$CD$2,{1,2,3}),$F$2:$CD$2,0)))
如果您希望标题彼此相邻,请将此数组公式(Ctrl + Shift + Enter)放入其中,例如A1:C1:
=INDEX($F$1:$CD$1,0,MATCH(SMALL($F$2:$CD$2,{1,2,3}),$F$2:$CD$2,0))
有一种不优雅但有效的方法:通过在单独的列中将列表中的位置作为小数添加到该数字来使每个数字唯一。使用“唯一数字”列进行小/大比较。所以苹果、香蕉和橙子都是三个“1”,它们变成1.1、1.2和1.3。如此独特,如此小/大,将每一个都视为可识别的没有问题。如果需要显示“1”,只需在唯一列上使用整数函数即可。