Power BI is turning 10! Tune in for a special live episode on July 24 with behind-the-scenes stories, product evolution highlights, and a sneak peek at what’s in store for the future.
Save the dateEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
I have a parameter I created to enable a dynamic date axis on a matrix table. This allows the user to select the date intervals, (for a date range selected elsewhere), which shows the intervals as the column headers. It calculates the totals correctly.
Hi @CherC
Yes, you can create a "Period-over-Period" measure that is conditional on the Axis selection.
Here are some examples:
1. If you have already defined measures Year/Year % etc:
Sales Period-over-Period % =
VAR AxisSelection =
SELECTCOLUMNS ( 'Axis', 'Axis'[Axis] )
VAR Result =
IF (
COUNTROWS ( AxisSelection ) = 1, -- Single parameter selection
SWITCH (
AxisSelection,
"Year", [Year/Year %],
"Quarter", [Quarter/Quarter %],
"Month", [Month/Month %],
"Week", [Week/Week %]
)
)
RETURN
Result
2. If you want to include the calcs all within a single measure (assuming the underlying measure is Sales) :
Sales Period-over-Period % =
VAR AxisSelection =
SELECTCOLUMNS ( 'Axis', 'Axis'[Axis] )
VAR Result =
IF (
COUNTROWS ( AxisSelection ) = 1, -- Single parameter selection
VAR ValueCurrentPeriod = [Sales]
VAR ValuePreviousPeriod =
SWITCH (
AxisSelection,
"Year", CALCULATE ( [Sales], SAMEPERIODLASTYEAR ( 'dates'[Date] ) ),
"Quarter", CALCULATE ( [Sales], DATEADD ( 'dates'[Date], -1, QUARTER ) ),
"Month", CALCULATE ( [Sales], DATEADD ( 'dates'[Date], -1, MONTH ) ),
"Week", CALCULATE ( [Sales], DATEADD ( 'dates'[Date], -7, DAY ) )
)
RETURN
DIVIDE ( ValueCurrentPeriod - ValuePreviousPeriod, ValuePreviousPeriod )
)
RETURN
Result
Does something like this work for you?
User | Count |
---|---|
25 | |
11 | |
8 | |
6 | |
6 |
User | Count |
---|---|
27 | |
13 | |
11 | |
9 | |
6 |