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

To celebrate FabCon Vienna, we are offering 50% off select exams. Ends October 3rd. Request your discount now.

Reply
Anonymous
Not applicable

Split row based on if statement

Hi,

 

Im new to Power BI. I have the following table from a  .xslx file

 

Shkr_0-1611911590944.png

 

 I want to split this in to 12 periods, only when period is "0".  if period is 1 to 12 the row should just follow like this:

 

Shkr_1-1611911801147.png

 

 

1 ACCEPTED SOLUTION
Smauro
Solution Sage
Solution Sage

Hi @Anonymous,

 

using the advanced editor, you could try adding this in your code:

    #"Fix Amounts" = Table.ReplaceValue(PreviousStep,
        each if [Period] = 0 then [Amount] else nulleach [Amount]/12,
        Replacer.ReplaceValue, {"Amount"} ),
    #"Fix Periods" = Table.TransformColumns(#"Fix Amounts",
{{"Period"each if _ = 0 then {1..12else {_}, type list}}),
    #"Expanded Periods" = Table.ExpandListColumn(#"Fix Periods", "Period")
in
    #"Expanded Periods"

 

Replacing PreviousStep with your previous step's name.

 

 

Best,

Spyros




Spyros Mavroforos

Data Consultant


Find me on LinkedIn or drop me an email

eSpyros

View solution in original post

3 REPLIES 3
Anonymous
Not applicable

Thanks Spyros! That worked well. The "Amount" column formatted into text and i had to replace Indexing step as last step obviously. 

Smauro
Solution Sage
Solution Sage

Hi @Anonymous,

 

using the advanced editor, you could try adding this in your code:

    #"Fix Amounts" = Table.ReplaceValue(PreviousStep,
        each if [Period] = 0 then [Amount] else nulleach [Amount]/12,
        Replacer.ReplaceValue, {"Amount"} ),
    #"Fix Periods" = Table.TransformColumns(#"Fix Amounts",
{{"Period"each if _ = 0 then {1..12else {_}, type list}}),
    #"Expanded Periods" = Table.ExpandListColumn(#"Fix Periods", "Period")
in
    #"Expanded Periods"

 

Replacing PreviousStep with your previous step's name.

 

 

Best,

Spyros




Spyros Mavroforos

Data Consultant


Find me on LinkedIn or drop me an email

eSpyros

Anonymous
Not applicable

Hi @smaru 

 

I want to modify this a little bit. What if i use "x" as a delimiter like this:

 

Shkr_0-1612338308069.png

 

 

In "period" column i type 5x36 meaning start at period 5, go for 36 periods. "Period" will have to go from 1-12 and "Year" has to be changed every 12 period.  

Helpful resources

Announcements
September Power BI Update Carousel

Power BI Monthly Update - September 2025

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

August 2025 community update carousel

Fabric Community Update - August 2025

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

Top Kudoed Authors