简体   繁体   中英

Power BI Transformation

I am trying to transform a calendar table I have in PowerBI.

The calendar data looks like this:

Name Event Detail Start Date End Date
Name 1 Event A Detail A 12/2/2020 15/2/2020
Name 2 Event A Detail A 12/2/2020 15/2/2020
Name 3 Event A Detail A 12/2/2020 15/2/2020
Name 2 Event B Detail B 22/2/2020 25/2/2020
Name 3 Event B Detail B 22/2/2020 25/2/2020
Name 4 Event B Detail B 22/2/2020 25/2/2020
Name 1 Event C Detail C 23/2/2020 27/2/2020

And I want it to look like this:

Name Event Detail Date
Name 1 Event A Detail A 12/2/2020
Name 1 Event A Detail A 13/2/2020
Name 1 Event A Detail A 14/2/2020
Name 1 Event A Detail A 15/2/2020
Name 2 Event A Detail A 12/2/2020
Name 2 Event A Detail A 13/2/2020
Name 2 Event A Detail A 14/2/2020
Name 2 Event A Detail A 15/2/2020
Name 3 Event A Detail A 12/2/2020
Name 3 Event A Detail A 13/2/2020
Name 3 Event A Detail A 14/2/2020
Name 3 Event A Detail A 15/2/2020
Name 2 Event B Detail B 22/2/2020
Name 2 Event B Detail B 23/2/2020
Name 2 Event B Detail B 24/2/2020
Name 2 Event B Detail B 25/2/2020
Name 3 Event B Detail B 22/2/2020
Name 3 Event B Detail B 23/2/2020
Name 3 Event B Detail B 24/2/2020
Name 3 Event B Detail B 25/2/2020
Name 4 Event B Detail B 22/2/2020
Name 4 Event B Detail B 23/2/2020
Name 4 Event B Detail B 24/2/2020
Name 4 Event B Detail B 25/2/2020
Name 1 Event C Detail C 23/2/2020
Name 1 Event C Detail C 24/2/2020
Name 1 Event C Detail C 25/2/2020
Name 1 Event C Detail C 26/2/2020
Name 1 Event C Detail C 27/2/2020

How can I do this in the query editor?

Thanks in advance!

Amend any names as required.

let
  Source = Excel.CurrentWorkbook(){[Name = "Table1"]}[Content], 
  #"Changed Type" = Table.TransformColumnTypes(
    Source, 
    {
      {"Name", type text}, 
      {"Event", type text}, 
      {"Detail", type text}, 
      {"Start Date", type date}, 
      {"End Date", type date}
    }
  ), 
  #"Added Column: Number of Days" = Table.AddColumn(
    #"Changed Type", 
    "Total Days", 
    each 1 + Duration.Days([End Date] - [Start Date])
  ), 
  #"Added Column: List" = Table.AddColumn(
    #"Added Column: Number of Days", 
    "Days to Add", 
    each {1 .. [#"Total Days"]}
  ), 
  #"Expanded Days to Add" = Table.ExpandListColumn(#"Added Column: List", "Days to Add"), 
  #"Added Column: New Dates" = Table.AddColumn(
    #"Expanded Days to Add", 
    "Custom", 
    each Date.AddDays([Start Date], [Days to Add] - 1), 
    type date
  )
in
  #"Added Column: New Dates"

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM