Google sheets 根据匹配条件查找最后一次出现
我有一个GoogleSheets,用来为我开发的应用程序运行测试。 电子表格有两张表,在第一张(“运行”表)上,我输入了日期(DD/MM/YYYY格式)、测试id和测试结果:Google sheets 根据匹配条件查找最后一次出现,google-sheets,Google Sheets,我有一个GoogleSheets,用来为我开发的应用程序运行测试。 电子表格有两张表,在第一张(“运行”表)上,我输入了日期(DD/MM/YYYY格式)、测试id和测试结果: ---------------------------------| |Date | test id | Result |--------------------------------| |12/10/2014 | 1 | Passed | |12/10/2014 | 2
---------------------------------|
|Date | test id | Result
|--------------------------------|
|12/10/2014 | 1 | Passed |
|12/10/2014 | 2 | Passed |
|12/10/2014 | 3 | Passed |
|03/11/2014 | 4 | Passed |
|05/11/2014 | 1 | Failed |
----------------------------------
在第二张纸上,我想要所有测试的列表,以及最后一次执行测试的时间,以及测试结果。这是“测试”表中的预期输出:
我的问题是,我不知道如何获得测试的“最后一次运行”。
我使用了以下公式:
=IF(ISNA(INDEX(Runs!A$3:A$9992, MATCH(A5, Runs!B$3:B$9992, 0))), "", INDEX(Runs!A$3:A$9992, MATCH(A5, Runs!B$3:B$9992, 0)))
但是它只返回测试id的第一个匹配项
,而不是最后一个匹配项
。这是我目前在“测试”表中看到的输出:
有人能帮我修改公式,让它返回最后一个匹配,就像预期的输出一样吗?
'Test'!B1
:=max(过滤器(运行!A:A,运行!B:B=A1))
-查找给定测试id(单元格A1)的最后日期
“测试”!C1
:=过滤器(运行!C:C,运行!B:B=A1,运行!A:A=B1)
-查找与该日期的测试相对应的结果
为其余测试向下复制我对日期格式有问题,当运行中的“日期”为DD/MM/YYYY(即2014年10月12日)时,公式失败,当运行中的“日期”为DDMMYYYY(即12102014)时,一切正常。你知道如何使用DD/MM/YYYY格式吗?在你的(共享)电子表格上贴一个链接,我可以看一下。它应该可以很好地处理日期,只要它们存储为日期而不是文本。它们确实存储为文本,我将它们格式化为日期,现在它工作得很好,谢谢!
=IF(ISNA(INDEX(Runs!A$3:A$9992, MATCH(A5, Runs!B$3:B$9992, 0))), "", INDEX(Runs!A$3:A$9992, MATCH(A5, Runs!B$3:B$9992, 0)))
-----------------------------------|
|test id | Last run | Result
|----------------------------------|
|1 | 12/10/2014 | Passed |
|2 | 12/10/2014 | Passed |
|3 | 12/10/2014 | Passed |
|4 | 03/11/2014 | Passed |
|5 | | |
------------------------------------