【问题标题】:How can I use INDEX and MATCH to find a cell using two inputs and mulptiple hits?如何使用 INDEX 和 MATCH 来查找使用两个输入和多个命中的单元格?
【发布时间】:2019-09-10 05:02:30
【问题描述】:

我有一张包含数据的表格。使用两个输入我想找到第一个或第二个匹配项并返回相应列的内容

使用 INDEX 和 MATCH 我能够找到匹配两个输入(颜色和大小)的第一个匹配项。

Table1
+--------+------+---------+
| colour | size |  price  |
|--------+------+---------+
|red     |   2  |   $3.00 |1
|red     |   3  |   $2.00 |2
|blue    |   3  |   $3.00 |3
|green   |   5  |   $4.00 |4
|blue    |   4  |   $6.00 |5
|red     |   4  |  $77.00 |6
|red     |   4  | $999.00 |7
+--------+---+--+---------+

我想要返回 999 的行号(第 7 行)。

我可以使用

获得第 6 行

=INDEX(Table1,MATCH(1, INDEX((Table1[colour] = F1) *(Table1[size] = F2), 0, 1), 0),3)

我尝试使用 AGGREGATE 理解 examples,但不理解它们。

【问题讨论】:

  • 也许我对此question 的回答(EDIT #2)也可以回答您的问题。如果您只为所有匹配条件寻找最高价格,AGGREGATE 就可以了。我在公式中使用了一些命名范围,但逻辑相同,只需选择相关范围并将它们与相关标准进行比较。请注意,在那个问题中,我正在寻找最小值,但您的情况将是最大的。
  • @seb 你说你想返回行7。但标准是什么?是匹配行的最高价格吗?它是 Last 匹配行吗?如果有 >1 个匹配的 999 怎么办?还有什么?

标签: excel excel-formula


【解决方案1】:

试试这个:

在 D 列上创建包含项目和重复的数据。 (对我来说,不清楚您是在寻找第二个数据还是只是“n”个数据)

所以在 D 列添加公式:=CONCATENATE(A3,B3,COUNTIFS($A$3:$A$10,A3,$B$3:$B$10,B3) (我假设您的第一个单元格是 A3 直到第 10 行,只需自定义它)在此列中您将获得数据:

红21

red31

蓝色31

绿色51

蓝色41

红41

红42

所以当你在搜索数据时,可以用 MATCH + INDEX 或 VLOOKUP 来询问你感兴趣的重复:

=VLOOKUP(F1&F2&F3,CHOOSE({2\1},$A$3:$A$10,$E$3:$E$10),2,0)

F3 单元格将具有重复数,因为您在 F1 上具有颜色,在 F2 上具有大小。如果始终是第二次重复,则代替 F3 放置“2”。

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-07
    相关资源
    最近更新 更多