Reply
KervBruce
Helper I
Helper I
Partially syndicated - Outbound

Multiply two tables

The title of my question isn't clear but I didn't know what to call it.

I have a table of project, with 2 columns: ID and Title.

I have another table of reporting periods (months) from 2021 to today.

I want to create a table with a row for each project for each period.

So with 165 projects and 38 perios I expect 6270 rows.

Can you suggest the M Code to achieve this?

2 ACCEPTED SOLUTIONS
ronrsnfld
Super User
Super User

Syndicated - Outbound
  • Add a custom column with a List of the Reporting Periods
  • Expand that column to new rows.

Code might be something like:

 

 

   #"Added Custom" = Table.AddColumn(#"Previous Step", "Reporting Period", each #"Reporting Periods", type {text}),
    #"Expanded Reporting Period" = Table.ExpandListColumn(#"Added Custom", "Reporting Period")

 

 

If your List of Reporting periods is in a table named Reporting Periods, you might need to change the reference to a table column type reference, eg   #"Reporting Periods"[Column Name]

 

View solution in original post

Syndicated - Outbound

Hello @KervBruce,

you only need to add two lines of code:

 

let
    Source = YourProjectTable,
    ColumnMonth = Table.AddColumn(Source, "Month", each YourDatesTable),
    OpenColumnMonth = Table.ExpandTableColumn(ColumnMonth, "Month", {"Month"}, {"Month"})
in
    OpenColumnMonth

 

 Best regards from Germany

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

4 REPLIES 4
ronrsnfld
Super User
Super User

Syndicated - Outbound
  • Add a custom column with a List of the Reporting Periods
  • Expand that column to new rows.

Code might be something like:

 

 

   #"Added Custom" = Table.AddColumn(#"Previous Step", "Reporting Period", each #"Reporting Periods", type {text}),
    #"Expanded Reporting Period" = Table.ExpandListColumn(#"Added Custom", "Reporting Period")

 

 

If your List of Reporting periods is in a table named Reporting Periods, you might need to change the reference to a table column type reference, eg   #"Reporting Periods"[Column Name]

 

Syndicated - Outbound

Thank you @ronrsnfld That was very simple 🙂

Syndicated - Outbound

Hello @KervBruce,

you only need to add two lines of code:

 

let
    Source = YourProjectTable,
    ColumnMonth = Table.AddColumn(Source, "Month", each YourDatesTable),
    OpenColumnMonth = Table.ExpandTableColumn(ColumnMonth, "Month", {"Month"}, {"Month"})
in
    OpenColumnMonth

 

 Best regards from Germany

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Syndicated - Outbound

 @ManuelBolz 

That's excelent, thank you

avatar user

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.

March2025 Carousel

Fabric Community Update - March 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors (Last Month)
Top Kudoed Authors (Last Month)