【问题标题】:Excel 2010 VLOOKUP to match two columns and retrieve the MAX value from the third columnExcel 2010 VLOOKUP 匹配两列并从第三列检索 MAX 值
【发布时间】:2017-01-10 21:01:13
【问题描述】:

我有一个包含两个工作表的 excel 文件。 Sheet1 包含我需要与 Sheet2 中的另一列 A 匹配的 A 列。如果 Sheet1 Column A 和 Sheet2 Column A 之间存在匹配,我想要来自 Sheet2 的第三列 B 的 MAX 值。 Sheet2 A 列有重复值,我希望将 Sheet2 B 列中的 MAX 值复制到 Sheet1 B 列。

我将不胜感激。

谢谢。

示例如下:

表 1

Column A Column B
A1234         
A2345
A3456
A4567

表 2

Column A Column B
A1234    20020105   
A1234    20020105
A2345    20010305
A3456    20100505
A3456    20100605

我已经尝试了下面的公式,但不能让它发挥作用

=match(Sheet1!A2,Sheet2!A2:A26283,0),vlookup(A2,Sheet2!A2:B26283,2,0), "") 

添加信息:Sheet2 可以排序。

我是如何解决我的问题的:

我在 sheet2 中创建了一个自定义排序,首先按 A 列升序,然后添加另一个级别以按降序对 B 列进行排序。这允许 MAX 列位于 A 列值重复的顶部。

然后,我将工作表 2 中的两列复制并粘贴到工作表 1 中。 我现在做了一个 VLOOKUP,其中 sheet1 列 A 与已锁定的查找表中我最左边的列匹配。 VLOOKUP 返回与 index = 2 匹配的第一个值,这是查找表中的第二列。这些值现在存在于 Sheet1 Column B 字段中。

感谢您为我指明正确的方向。

【问题讨论】:

  • 我编辑了原始问题。是的,您可以对 sheet2 进行排序。谢谢!
  • 我会试试看的。

标签: excel


【解决方案1】:

在工作表 1 的 B1 中使用此公式:

=AGGREGATE(14,6,Sheet2!$B$1:$B$5/(Sheet2!$A$1:$A$5=A1),1)

或者,如果您有 Office 365 Excel,请使用:

=MAXIFS(Sheet2!B:B,Sheet2!A:A,A1)

然后抄下来。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多