Don't miss your chance to take the Fabric Data Engineer (DP-600) exam for FREE! Find out how by attending the DP-600 session on April 23rd (pacific time), live or on-demand.
Learn moreNext up in the FabCon + SQLCon recap series: The roadmap for Microsoft SQL and Maximizing Developer experiences in Fabric. All sessions are available on-demand after the live show. Register now
Good Afternoon,
I have been struggling with the following issue, I do not know if it's possible to do it in PowerBI/DAX.
My data looks like:
Date Continent Country Company Operations
01/01/2017 Europe Spain Google 500
01/01/2017 Europe Spain Apple 250
01/01/2017 Europe France Google 300
01/01/2017 Europe France Microsoft 400
01/01/2017 Europe Italy Google 100
02/01/2017 Europe Spain Google 300
02/01/2017 Europe Spain Apple 100
.
.
.
And I would like to add a column that correponds to the difference between consecutive days for the same company in the same country (for example, 500 (Google/Spain/01.01.2017) - 300 (Google/Spain/02.01.2017) = 200) and this 200 should be positioned in the first row of the next column (in our example it would look like)
Date Continent Country Company Operations Difference
01/01/2017 Europe Spain Google 500 200
01/01/2017 Europe Spain Apple 250 150 (250-100)
01/01/2017 Europe France Google 300 .
01/01/2017 Europe France Microsoft 400 .
01/01/2017 Europe Italy Google 100 .
02/01/2017 Europe Spain Google 300
02/01/2017 Europe Spain Apple 100
Is this possible?
The formula that I have tried is the following:
[Difference] = CALCULATE (
SUM( 'Sheet1'[Operations] );
FILTER(ALL('Sheet1' );
'Sheet1'[Date] <= EARLIER ('Sheet1'[Date] )
&& 'Sheet1'[Country] = EARLIER( ('Sheet1'[Country]) )
&& 'Sheet1'[Company] = EARLIER('Sheet1'[Company])
))
But I am only able to sum the values between the different company/country/consecutive dates, not being able to perform the difference.
I would be really grateful if someone can help me.
Thanks!!
Solved! Go to Solution.
Hi. Try this calculated column
=
VAR FollowingDay =
NEXTDAY ( Sheet1[Date] )
RETURN
Sheet1[Operations]
- CALCULATE (
VALUES ( Sheet1[Operations] ),
FILTER (
ALL ( Sheet1 ),
Sheet1[Company] = EARLIER ( Sheet1[Company] )
&& Sheet1[Country] = EARLIER ( Sheet1[Country] )
&& Sheet1[Date] = FollowingDay
)
)
PD.I would like to Point that there are many companies and countries (what I put was a smaller example in the post) and it is not feasable to put manually which company in which country must be searched by the function (that is why I used the "EARLIER" function)
Hi. Try this calculated column
=
VAR FollowingDay =
NEXTDAY ( Sheet1[Date] )
RETURN
Sheet1[Operations]
- CALCULATE (
VALUES ( Sheet1[Operations] ),
FILTER (
ALL ( Sheet1 ),
Sheet1[Company] = EARLIER ( Sheet1[Company] )
&& Sheet1[Country] = EARLIER ( Sheet1[Country] )
&& Sheet1[Date] = FollowingDay
)
)
Great solution! Thanks Man.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.
A new Power BI DataViz World Championship is coming this June! Don't miss out on submitting your entry.
| User | Count |
|---|---|
| 45 | |
| 43 | |
| 38 | |
| 19 | |
| 15 |
| User | Count |
|---|---|
| 67 | |
| 66 | |
| 31 | |
| 28 | |
| 24 |