有没有办法使用 Excel 的 VLOOKUP 和多个条件?

有没有办法使用 Excel 的 VLOOKUP 和多个条件?

我正在尝试创建一个数据聚合,查看包含大量重复项目的列表,并编译重复出现的总数以及与最近的重复相关的唯一值(其日期)

因此数据看起来像这样:

所以数据看起来像这样

我希望能够创建一行项目“Apple”,它可以在下一栏中告诉我,对于“Farm”,apple 出现了两次。

然后我希望下一行告诉我“Apple”上次与“Farm”一起出现是在 2018 年 4 月 24 日。

我相信我已经完成了第一步,即使用 =COUNTIFS 函数告诉我“农场”中“苹果”出现的次数,B 列中一组“农场”条件,A 列中第二组“苹果”条件,但我如何查看列表并同时为苹果和农场提供一个日期?我研究过 Vlookup,但它仅限于一个条件。

结果应以如下形式列出:

结果应以如下形式列出

答案1

为了Farm_count请尝试这个公式:=SUMPRODUCT(($A$2:$A$5=A10)*($B$2:$B$5=LEFT($B$9,LEN($B$9)-(LEN($B$9)-FIND("_",$B$9)+1))))

在此处输入图片描述

为了Farm_last请使用这个数组公式:=MAX(IF(($A$2:$A$5=A10)*($B$2:$B$5=LEFT($B$9,LEN($B$9)-(LEN($B$9)-FIND("_",$B$9)+1))),$C$2:$C$5,""))

按结束Ctrl+Shift+Enter

在此处输入图片描述

答案2

在此处输入图片描述

怎么运行的:

  1. B8写下此公式并填写。

    =SUMPRODUCT(--($A$2:$A$5=A8),--($B$2:$B$5=$C$6))

  2. 寻找上次“Apple”和“Farm”一起出现时,将此数组公式写入C8并结束Ctrl+Shift+Enter

{=INDEX($C$2:$C$5,SMALL(IF($C$6=$B$2:$B$5,ROW($B$2:$B$5)-ROW($B$2)+1),2))}

  1. 查找农场中橙子的出现日期,将此数组公式写入C9并结束Ctrl+Shift+Enter

{=INDEX($C$2:$C$5,SMALL(IF($C$6=$B$2:$B$5,ROW($B$2:$B$5)-ROW($B$2)+1),1))}

笔记,

  • C6 单元格有农场。
  • 根据需要调整公式中的单元格引用。

相关内容