Это отличный вопрос для изучения того, как создать логическое решение в Excel.
Создайте много новых столбцов справа от ваших данных. Не беспокойтесь об использовании слишком многих, просто сделайте правильную логику. Я предполагаю, что ваши данные находятся в столбцах A-F, и мы работаем со строкой 3. В качестве примера.
Столбец G должен иметь CheckoutID: = IF (F3 = "Checkout", E3, "")
Если вы используете что-то подобное, вы изолируете в новом столбце все строки Checkout. Таким образом, у вас будет одно значение для каждого уникального идентификатора.
Насколько я могу судить, единственная информация, которая вам нужна, но которая не находится в этом ряду, - это время регистрации.
Итак, в Columm H мы делаем сложную часть:
= ЕСЛИ (G3 = "", "", MAXIFS (В: В, Е: Е, G3, F: "Checkin"))
Это говорит о том, что если у нас есть значение в G3, то есть это строка Checkout, тогда ищите максимальное из всех времен проверки (B: B), где наше значение G3 соответствует значению в исходном столбце уникального идентификатора (E : E). И затем убедитесь, что мы ищем «Checkin» только в столбце сообщения (F: F).
Оно должно возвращать значение обратно в столбец результатов времени возврата, но только в строке контроля. Это может выглядеть как число, но если вы отформатируете столбец как время, он будет выглядеть как ваш столбец времени. Время - это всего лишь доли дня.
Если вы затем в этой строке возьмете разницу между этим значением и столбцом B, у вас будет количество дней, в течение которых они были там. Вы хотите, чтобы минуты умножались на количество минут в дне, которое составляет 1440.
Столбец I:
= IF (G3 = "", "", (B3-H3) * 60 * 24)
Отфильтруйте пустые строки, и это должно быть сделано.