Forum Discussion
abhijeetdt123
3 months agoRegular Visitor
Power Query – Expand start week into weekly rows
Hi all, I have a table where each row represents a project with a Start week (YYYY‑WW) and a number of weeks. Source table: Required output: I want to expand this so that each project ...
- 3 months ago
Hi abhijeetdt123 ?
is this what you are looking for ?
Link :
Resuts Expanded.pbixlet Source = #"Input table", ChangedTypes = Table.TransformColumnTypes(Source, { {"Project", type text}, {"Start week", type text}, {"No. of weeks", Int64.Type}, {"End week", type text}, {"Parameter", type text} }), AddWeekList = Table.AddColumn(ChangedTypes, "Weeks", each {0..[#"No. of weeks"]}), ExpandedWeeks = Table.ExpandListColumn(AddWeekList, "Weeks"), AddWeekColumn = Table.AddColumn(ExpandedWeeks, "Week", each let StartYear = Number.FromText(Text.Start([Start week], 4)), StartWeek = Number.FromText(Text.End([Start week], 2)), TotalWeek = StartWeek + [Weeks], Year = StartYear + Number.IntegerDivide(TotalWeek - 1, 52), WeekNum = Number.Mod(TotalWeek - 1, 52) + 1 in Text.From(Year) & "-" & Text.PadStart(Text.From(WeekNum), 2, "0") ), FinalTable = Table.SelectColumns(AddWeekColumn, {"Project", "Week", "Parameter"}) in FinalTable
Thanks
If you found this helpful, please consider giving it a kudo and marking it as the accepted solution — it goes a long way in helping others facing the same issue.
For more Power BI tips and discussions, let’s connect on LinkedIn:
https://www.linkedin.com/in/natarajan-manivasagan
Cheers!
Natarajan_M
3 months agoSuper User
Hi abhijeetdt123 ?
is this what you are looking for ?
Link :
Resuts Expanded.pbix
let
Source = #"Input table",
ChangedTypes = Table.TransformColumnTypes(Source, {
{"Project", type text},
{"Start week", type text},
{"No. of weeks", Int64.Type},
{"End week", type text},
{"Parameter", type text}
}),
AddWeekList = Table.AddColumn(ChangedTypes, "Weeks", each {0..[#"No. of weeks"]}),
ExpandedWeeks = Table.ExpandListColumn(AddWeekList, "Weeks"),
AddWeekColumn = Table.AddColumn(ExpandedWeeks, "Week", each
let
StartYear = Number.FromText(Text.Start([Start week], 4)),
StartWeek = Number.FromText(Text.End([Start week], 2)),
TotalWeek = StartWeek + [Weeks],
Year = StartYear + Number.IntegerDivide(TotalWeek - 1, 52),
WeekNum = Number.Mod(TotalWeek - 1, 52) + 1
in
Text.From(Year) & "-" & Text.PadStart(Text.From(WeekNum), 2, "0")
),
FinalTable = Table.SelectColumns(AddWeekColumn, {"Project", "Week", "Parameter"})
in
FinalTable
Thanks
If you found this helpful, please consider giving it a kudo and marking it as the accepted solution — it goes a long way in helping others facing the same issue.
For more Power BI tips and discussions, let’s connect on LinkedIn:
https://www.linkedin.com/in/natarajan-manivasagan
Cheers!