let
Source = Excel.CurrentWorkbook(){[Name="RawVerticalData"]}[Content],
AddIndex = Table.AddIndexColumn(
Source,
"Index",
0,
1,
Int64.Type
AddGroup = Table.AddColumn(
AddIndex,
"Group",
each Number.IntegerDivide([Index], 4),
Int64.Type
AddField = Table.AddColumn(
AddGroup,
"Field",
each {"Регион", "Магазин", "Дата продажи", "Продажи"}{Number.Mod([Index], 4)}
RemoveIndex = Table.RemoveColumns(
AddField,
{"Index"}
PivotData = Table.Pivot(
RemoveIndex,
{"Регион", "Магазин", "Дата продажи", "Продажи"},
"Field",
"Данные",
List.First
CleanSales = Table.TransformColumns(
PivotData,
{
{
"Продажи",
each
Number.FromText(
Text.Replace(
Text.Replace(
Text.Replace(Text.From(_), "руб", ""),
" ",
""
),
Character.FromNumber(160),
""
),
"ru-RU"
),
type number
}
}
ChangeDateType = Table.TransformColumns(
CleanSales,
{
{
"Дата продажи",
each Date.From(_, "ru-RU"),
type date
}
}
RemoveGroup = Table.RemoveColumns(
ChangeDateType,
{"Group"}
)
in
RemoveGroup