公式给出满足 VLOOKUP 中条件的 3 个最大值旁边的单元格的值
Formula to give the value of the cell next to the 3 largest values that meet a criteria in VLOOKUP
我正在创建一个电子表格,它使用 VLOOKUP 根据下拉框提供一组数据。
这是一个相当大的列表(屏幕截图并未显示),数据是定期添加新行的 table 的一部分。因此,在查看范围时,它需要采用 "TABLE1[COLUMN1]" 的格式,而不是 "A1:A15" 例如。
基本上我是在 3 个单独的单元格之后显示符合条件的 3 个最高值旁边的单元格。例如,在下面的屏幕截图中,A17 = AAA。因此,我希望单元格 C17 显示最高值旁边的值,其中 TABLE1[COLUMN1] = "AAA"。在此示例中,单元格 C17:C19 将分别显示 "WWW"、"XXX" 和 "VVV"。
我不确定我解释得如何,因为我对 excel 还很陌生。因此,如果您需要任何进一步的信息,请随时告诉我!
谢谢:)
使用新的动态数组公式:
=INDEX(INDEX(SORT(FILTER(Table1,Table1[COLUMN1]=F1),2,-1),0,3),{1;2;3})
将它放在第一个单元格中,Excel 将把它填满。
排序中的,2,
指的是相对于table中的第2列。将其更改为 table 中包含数字的列号。 ,3
指的是 return 的相对列,在我的例子中是第三列。
如果没有动态数组公式,需要将其放在第一个单元格中并向下复制:
=INDEX(C:C,AGGREGATE(15,7,ROW(Table1[COLUMN2])/((Table1[COLUMN2]=AGGREGATE(14,7,Table1[COLUMN2]/(Table1[COLUMN1]=$F),ROW(1:1)))*(Table1[COLUMN1]=$F)),1))
这是我使用的方式,
=INDEX($E:$E,INDEX(MATCH($G&LARGE(($C:$C=$G)*$D:$D,ROW(A1)),$C:$C&$D:$D,0),0))
我正在创建一个电子表格,它使用 VLOOKUP 根据下拉框提供一组数据。
这是一个相当大的列表(屏幕截图并未显示),数据是定期添加新行的 table 的一部分。因此,在查看范围时,它需要采用 "TABLE1[COLUMN1]" 的格式,而不是 "A1:A15" 例如。
基本上我是在 3 个单独的单元格之后显示符合条件的 3 个最高值旁边的单元格。例如,在下面的屏幕截图中,A17 = AAA。因此,我希望单元格 C17 显示最高值旁边的值,其中 TABLE1[COLUMN1] = "AAA"。在此示例中,单元格 C17:C19 将分别显示 "WWW"、"XXX" 和 "VVV"。
我不确定我解释得如何,因为我对 excel 还很陌生。因此,如果您需要任何进一步的信息,请随时告诉我!
谢谢:)
使用新的动态数组公式:
=INDEX(INDEX(SORT(FILTER(Table1,Table1[COLUMN1]=F1),2,-1),0,3),{1;2;3})
将它放在第一个单元格中,Excel 将把它填满。
排序中的,2,
指的是相对于table中的第2列。将其更改为 table 中包含数字的列号。 ,3
指的是 return 的相对列,在我的例子中是第三列。
如果没有动态数组公式,需要将其放在第一个单元格中并向下复制:
=INDEX(C:C,AGGREGATE(15,7,ROW(Table1[COLUMN2])/((Table1[COLUMN2]=AGGREGATE(14,7,Table1[COLUMN2]/(Table1[COLUMN1]=$F),ROW(1:1)))*(Table1[COLUMN1]=$F)),1))
这是我使用的方式,
=INDEX($E:$E,INDEX(MATCH($G&LARGE(($C:$C=$G)*$D:$D,ROW(A1)),$C:$C&$D:$D,0),0))