let
Source = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Код", Int64.Type}, {"Номер", Int64.Type}, {"Статус", Int64.Type}}),
#"Sorted Rows" = Table.Sort(#"Changed Type",{{"Номер", Order.Ascending}}),
#"Added Index" = Table.AddIndexColumn(#"Sorted Rows", "Индекс", 0, 1),
#"Added Custom" = Table.AddColumn(#"Added Index", "Пользовательская", each [Номер]-[Индекс]),
Custom1 = Table.FromColumns( Table.ToColumns(#"Added Custom") & Table.ToColumns( #table({"Статус"}, {{null}}) & Table.RemoveLastN(Table.SelectColumns(#"Added Custom",{"Статус"}), 1 ) ), Table.ColumnNames(#"Added Custom") & {"Пред.Статус"} ),
#"Added Custom1" = Table.AddColumn(Custom1, "Пользовательская.1", each if [Статус]-[Пред.Статус] <> 0 then [Индекс] else null),
#"Filled Down" = Table.FillDown(#"Added Custom1",{"Пользовательская.1"}),
#"Grouped Rows" = Table.Group(#"Filled Down", {"Код", "Статус", "Пользовательская", "Пользовательская.1"}, {{"Начало", each List.Min([Номер]), type number}, {"Окончание", each List.Max([Номер]), type number}, {"Кол-во", each Table.RowCount(_), type number}}),
#"Removed Other Columns" = Table.SelectColumns(#"Grouped Rows",{"Код", "Начало", "Окончание", "Статус", "Кол-во"})
in
#"Removed Other Columns" |