2014-11-04 2 views
4

У меня есть таблица документов Google, которую я использую для запуска тестов для приложения, которое я разработал. Электронная таблица Google имеет два листа, на первом листе я ставлю даты (в формате ДД/ММ/ГГГГ), идентификатор теста и привести к тестам:Google Spreadsheet: найдите последнее значение, основанное на критериях соответствия

"Runs" spreadsheet 
---------------------------------| 
|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 |  
---------------------------------- 

На второй таблицы я хочу иметь список всех тестов, и когда они были в последний раз, когда они были выполнены, а также результаты для них.
Ниже приведен ожидаемый результат:

"Tests" spreadsheet 
-----------------------------------| 
|test id  | Last run | Result 
|----------------------------------| 
|1   | 05/11/2014 | Failed | 
|2   | 12/10/2014 | Passed | 
|3   | 12/10/2014 | Passed | 
|4   | 03/11/2014 | Passed | 
|5   |   |  |  
------------------------------------ 

Моя проблема заключается в том, что я не знаю, как получить «последнего запуска» для теста. я использовал следующую формулу:

=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))) 

Но это возвращает только first match ФОТ идентификатор теста, а не last one.
Таким образом, это выход настоящее время я получаю:

"Tests" spreadsheet 
-----------------------------------| 
|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   |   |  |  
------------------------------------ 

Может кто-то помочь мне изменить формулу, чтобы сделать его вернуть последний матч, как ожидается выход?

ответ

3

'Test'!B1: =max(filter(Runs!A:A,Runs!B:B=A1)) - узнать последнюю дату для данного теста ид (ячейка А1)

'Test'!C1: =filter(Runs!C:C,Runs!B:B=A1,Runs!A:A=B1) - узнать результат, соответствующий этому испытанию на эту дату.

Перепишите для остальных тестов

+0

У меня возникли проблемы с форматом даты, когда «Дата» в прогонов в формате ДД/ММ/ГГГГ (т.е. 12/10/2014) формулы терпят неудачу, когда «Дата» в Runs находится в DDMMYYYY (т.е. 12102014), все работает. Вы знаете, как я могу заставить его работать с форматом DD/MM/YYYY? –

+0

опубликуйте ссылку на свою (общую) таблицу, и я могу посмотреть. Он должен отлично работать с датами, если они хранятся как DATES, а не текст. – user3616725

+0

Они были действительно сохранены как текст, я отформатировал их как DATE, и теперь он отлично работает, спасибо! –

Смежные вопросы