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

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Request now

Reply
darkobrown
Regular Visitor

Get only last change per day where multiple changes per day

I have a change history table. The table looks as this: 

darkobrown_0-1684920801940.png

As you can see the last 2 rows are in the same day. This messes my calculations up when i want to sum it up per day. So i need only 1 entry per day (the latest). 

 

How can i achieve with dax that I only get 1 entry per day where mutliple entries per day exist ? (only when its the same field) 

 

1 ACCEPTED SOLUTION
darkobrown
Regular Visitor

That was not the expected Result. 

But I managed to solve the problem with a collegue. 

Here is the Solution for anyone intrested: 

1. I created a new Column where I formated the 'created' column into "DateAsInteger" :

createdDateAsInt = FORMAT(change_history_SP[created],"YYYYMMDD")

 2. I created another column as following: 

Only1ValueperDay Remaining Sp = 
VAR latestdate= CALCULATE(MAXX(change_history_SP, change_history_SP[created]), ALLEXCEPT(change_history_SP,change_history_SP[createdDateAsInt], change_history_SP[id]))
return 
IF(change_history_SP[created] = latestdate && change_history_SP[field]= "Remaining SP", change_history_SP[newstring] )

By this solution I get only the latest change if there are more than 1 change for the field "Remaining SP". 

And then did the same for the Field "Story Points". 

Now it looks like this: 

darkobrown_0-1684931360168.png

 

View solution in original post

2 REPLIES 2
darkobrown
Regular Visitor

That was not the expected Result. 

But I managed to solve the problem with a collegue. 

Here is the Solution for anyone intrested: 

1. I created a new Column where I formated the 'created' column into "DateAsInteger" :

createdDateAsInt = FORMAT(change_history_SP[created],"YYYYMMDD")

 2. I created another column as following: 

Only1ValueperDay Remaining Sp = 
VAR latestdate= CALCULATE(MAXX(change_history_SP, change_history_SP[created]), ALLEXCEPT(change_history_SP,change_history_SP[createdDateAsInt], change_history_SP[id]))
return 
IF(change_history_SP[created] = latestdate && change_history_SP[field]= "Remaining SP", change_history_SP[newstring] )

By this solution I get only the latest change if there are more than 1 change for the field "Remaining SP". 

And then did the same for the Field "Story Points". 

Now it looks like this: 

darkobrown_0-1684931360168.png

 

vk_pbi
Resolver II
Resolver II

Hi, 

I am not sure about your calculation (sum, average etc), but you can use the MAXX to iterate each row in the table and take the MAX date&time.

Hope this will help you. 

Or else please share some more details to write DAX for you

Helpful resources

Announcements
November Power BI Update Carousel

Power BI Monthly Update - November 2025

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

Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

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.

Top Solution Authors
Top Kudoed Authors