Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

July 7 - July 17 | Round 2 of the Power BI Dataviz World Championships. Don't miss your chance! Learn more

Reply
simonchung
Frequent Visitor

Using DAX to create a Calculated table

Hi, 

I would like to create a table from A to B, expand to 12 months with Start Date, Amount distributes evenly to 12 months, is it possible? thanks so much!

Table A

IDStart DateAmount
AApr-2412000
BAug-242400


Result: Table B

IDMonthAmount
AApr-241000
AMay-241000
AJun-241000
AJul-241000
AAug-241000
ASep-241000
AOct-241000
ANov-241000
ADec-241000
AJan-251000
AFeb-251000
AMar-251000
BAug-24200
BSep-24200
BOct-24200
BNov-24200
BDec-24200
BJan-25200
BFeb-25200
BMar-25200
BApr-25200
BMay-25200
BJun-25200
BJul-25200
1 ACCEPTED SOLUTION
DimaMD
Solution Sage
Solution Sage

@simonchung  Hi Try it DAX

ExpandedTable = 
VAR MonthsToExpand = 12
VAR T1 =
    GENERATE(
        'Table A',
        VAR StartDate = 'Table A'[Start Date]
        VAR AmountPerMonth = DIVIDE('Table A'[Amount], MonthsToExpand)
        VAR Dates = ADDCOLUMNS(
            GENERATESERIES(0, MonthsToExpand - 1, 1),
            "MonthDate", EDATE(StartDate, [Value])
        )
        RETURN
            SELECTCOLUMNS(
                Dates,
                "ID_Expanded", 'Table A'[ID],
                "Month", FORMAT([MonthDate], "MMM-yy"),
                "Amount1", AmountPerMonth
            )
    )
RETURN
SUMMARIZE( T1,[ID_Expanded],[Month],[Amount1])

__________________________________________

Thank you for your like and decision

__________________________________________

Greetings from Ukraine

To help me grow PayPal: [email protected]

View solution in original post

2 REPLIES 2
DimaMD
Solution Sage
Solution Sage

@simonchung  Hi Try it DAX

ExpandedTable = 
VAR MonthsToExpand = 12
VAR T1 =
    GENERATE(
        'Table A',
        VAR StartDate = 'Table A'[Start Date]
        VAR AmountPerMonth = DIVIDE('Table A'[Amount], MonthsToExpand)
        VAR Dates = ADDCOLUMNS(
            GENERATESERIES(0, MonthsToExpand - 1, 1),
            "MonthDate", EDATE(StartDate, [Value])
        )
        RETURN
            SELECTCOLUMNS(
                Dates,
                "ID_Expanded", 'Table A'[ID],
                "Month", FORMAT([MonthDate], "MMM-yy"),
                "Amount1", AmountPerMonth
            )
    )
RETURN
SUMMARIZE( T1,[ID_Expanded],[Month],[Amount1])

__________________________________________

Thank you for your like and decision

__________________________________________

Greetings from Ukraine

To help me grow PayPal: [email protected]

Exactly, thank you so so much!!

Helpful resources

Announcements
FabCon and SQLCon Barcelona 2026

FabCon & SQLCon – Barcelona 2026

Join us in Barcelona for FabCon and SQLCon, the Fabric, Power BI, SQL, and AI community event. Save €200 with code FABCMTY200.

60 days of Data Days Carousel

Data Days 2026

Join Data Days 2026: 60 days of free live/on-demand sessions, challenges, study groups, and certification opportunities.

Power BI DataViz World Championships carousel

Power BI DataViz World Championships - June 2026

A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.