Excel索引+匹配返回重复值

问题描述 投票:0回答:1

我工作的公司使用 Excel 表格在他们想要的加油地点找到最便宜的可用燃料。我已经设法使他们已经到位的表中的公式正常工作,除了 1 个非常具体的情况,其中超过 1 个地点以相同的价格提供燃料。

图像示例

基本上在示例中: 对于 H、J 和 L 列,公式计算第一、第二和第三最便宜的燃料位置,公式:

=Small(C3:G3;Countif(C3:G3;0)+1)
=Small(C3:G3;Countif(C3:G3;0)+2)
=Small(C3:G3;Countif(C3:G3;0)+3)

对于第 i、K 和 M 列,它会找到与其旁边的单元格与第一行的车站名称相匹配的 $$。

在这种情况下,由于 Courcelle、lac Megantic 和 St-Gedeon 都以相同的价格 (1,4505) 出售燃料,因此返回 3X Courcelle 作为答案。 公式:

=index($C$1:$G$1;Match(H3;C3:G3;0))
=index($C$1:$G$1;Match(J3;C3:G3;0))
=index($C$1:$G$1;Match(L3;C3:G3;0))`

是否可以在不重新加工整张纸的情况下实现以下任一目的:

  1. 返回最便宜的车站,但如果该名称已在单元格 1 或 2 中,则跳到下一个。

  2. 返回与最便宜价格匹配的所有车站名称,然后查找下一个最高价格并按照如下方式进行操作

这就是我希望它能给出/预期的结果

excel spreadsheet
1个回答
0
投票

您可以尝试使用以下公式,假设帖子标签没有 excel 约束:


=LET(
     _x, A3:E3, 
     _y, TAKE(SORT(UNIQUE(A3:E3,1),,,1),,3), 
     TOROW(VSTACK(XLOOKUP(_y,_x,$A$1:$E$1),_y),,1))

您可能需要根据您的需求更改单元格引用或范围。


© www.soinside.com 2019 - 2024. All rights reserved.