Группировка по .. продвинутый .... по имени пользователя. Добавьте два новых имени столбца, чтобы получить максимальное и минимальное время входа в столбец. Затем добавьте столбец .. пользовательский столбец ... и создайте формулу, которая вычитает новый максимальный столбец из минимального столбца
let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"username", type text}, {"entrytime", type time}}),
#"Grouped Rows" = Table.Group(#"Changed Type", {"username"}, {{"In", each List.Min([entrytime]), type time}, {"Out", each List.Max([entrytime]), type time}}),
#"Added Custom" = Table.AddColumn(#"Grouped Rows", "Custom", each [Out]-[In])
in #"Added Custom"
Выше предполагается, что вы просматриваете данные за одну дату. Для данных с несколькими датами, когда человек никогда не останется на ночь, сгруппируйте по ... расширенному .... по имени пользователя и дате.
Редактировать:
Чтобы сравнить каждую строку с минимальным временем каждого , получите минимальное время каждого
MinTime = List.Min(Source[Time]),
Затем создайте новый пользовательский столбец, который вычитает
#"Added Custom" = Table.AddColumn(#"Prior Step", "Custom", each [Time]-MinTime)