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

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
nirvana_moksh
Impactful Individual
Impactful Individual

DAX To M Query

Hey All,

 

I had a question in regards to changing the below DAX to M and if it is possible:

 

CALCULATE(LASTNONBLANK('Table A'[Column 1],1),FILTER('Table A','Table A'[Index] = MIN('Table A'[Index])))

 

 

The above DAX basically finds the latest COLUMN 1 value using the Index column I have set up, I want to do this in M query so that I can limit data from right there instead of using the above DAX.

 

 

Thank You

1 ACCEPTED SOLUTION
v-juanli-msft
Community Support
Community Support

Hi @nirvana_moksh

As tested, I add an index column from 1.

Code in Advanced Editor

let

    Source = Excel.Workbook(File.Contents("C:\Users\maggiel\Desktop\PR4.0\5\5.29\Circular dependancy.xlsx"), null, true),

    Sheet1_Sheet = Source{[Item="Sheet1",Kind="Sheet"]}[Data],

    #"Promoted Headers" = Table.PromoteHeaders(Sheet1_Sheet, [PromoteAllScalars=true]),

    #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"taskId", Int64.Type}, {"startupGoalDate", type date}, {"duration", Int64.Type}}),

    #"Added Index" = Table.AddIndexColumn(#"Changed Type", "Index", 1, 1),

    #"Added Conditional Column1" = Table.AddColumn(#"Added Index", "min", each List.Min(Table.Column(#"Added Index","Index"))),

    #"Added Conditional Column2" = Table.AddColumn(#"Added Conditional Column1","Custom", each if [Index]=[min]  then List.Last(Table.Column(#"Added Index","duration")) else null) 

in

#"Added Conditional Column2"

 

Something easier to do with DAX maybe complex with M query,

Reference:

List.Last

Table.SelectRows

Table.SelectColumns

 

Best Regards

Maggie

View solution in original post

2 REPLIES 2
v-juanli-msft
Community Support
Community Support

Hi @nirvana_moksh

As tested, I add an index column from 1.

Code in Advanced Editor

let

    Source = Excel.Workbook(File.Contents("C:\Users\maggiel\Desktop\PR4.0\5\5.29\Circular dependancy.xlsx"), null, true),

    Sheet1_Sheet = Source{[Item="Sheet1",Kind="Sheet"]}[Data],

    #"Promoted Headers" = Table.PromoteHeaders(Sheet1_Sheet, [PromoteAllScalars=true]),

    #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"taskId", Int64.Type}, {"startupGoalDate", type date}, {"duration", Int64.Type}}),

    #"Added Index" = Table.AddIndexColumn(#"Changed Type", "Index", 1, 1),

    #"Added Conditional Column1" = Table.AddColumn(#"Added Index", "min", each List.Min(Table.Column(#"Added Index","Index"))),

    #"Added Conditional Column2" = Table.AddColumn(#"Added Conditional Column1","Custom", each if [Index]=[min]  then List.Last(Table.Column(#"Added Index","duration")) else null) 

in

#"Added Conditional Column2"

 

Something easier to do with DAX maybe complex with M query,

Reference:

List.Last

Table.SelectRows

Table.SelectColumns

 

Best Regards

Maggie

Thank you, I will try this out and check the output

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!

December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.