let
Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Дата", type date}}),
#"Добавлен индекс" = Table.AddIndexColumn(#"Changed Type", "Индекс", 0, 1),
#"Добавлен индекс1" = Table.AddIndexColumn(#"Добавлен индекс", "Индекс.1", 1, 1),
#"Объединенные запросы" = Table.NestedJoin(#"Добавлен индекс1",{"Индекс"},#"Добавлен индекс1",{"Индекс.1"},"Предыдущая",JoinKind.LeftOuter),
#"Expanded {0}" = Table.ExpandTableColumn(#"Объединенные запросы", "Предыдущая", {"Состояние"}, {"Состояние.1"}),
#"Added Conditional Column" = Table.AddColumn(#"Expanded {0}", "Пользовательская", each if [Состояние] = "ремонт" and [Состояние.1] <> "ремонт" then [Индекс] else null),
#"Filled Down" = Table.FillDown(#"Added Conditional Column",{"Пользовательская"}),
#"Filtered Rows" = Table.SelectRows(#"Filled Down", each [Состояние] = "ремонт"),
#"Renamed Columns" = Table.RenameColumns(#"Filtered Rows",{{"Гос.№", "Гос"}}),
#"Added Custom" = Table.AddColumn(#"Renamed Columns", "Пользовательская.1", each List.NonNullCount(#"Renamed Columns"[Состояние])),
#"Grouped Rows" = Table.Group(#"Added Custom", {"Пользовательская"}, { {"Дата отчета", each List.Max([Дата]), type date}, {"Гос.№", each List.Distinct(_[Гос])},{"всего в ремонте за период",each List.Distinct(_[Пользовательская.1])},{"дней в ремонте (с последней постановки на ремонт)", each Table.RowCount(_), type number}}),
#"Kept Last Rows" = Table.LastN(#"Grouped Rows", 1),
#"Extracted Values" = Table.TransformColumns(#"Kept Last Rows", {"Гос.№", each Text.Combine(List.Transform(_, Text.From)), type text}),
#"Extracted Values1" = Table.TransformColumns(#"Extracted Values", {"всего в ремонте за период", each Text.Combine(List.Transform(_, Text.From)), type text}),
#"Removed Columns" = Table.RemoveColumns(#"Extracted Values1",{"Пользовательская"}),
#"Changed Type1" = Table.TransformColumnTypes(#"Removed Columns",{{"всего в ремонте за период", Int64.Type}})
in
#"Changed Type1"
|