Power BI is turning 10, and we’re marking the occasion with a special community challenge. Use your creativity to tell a story, uncover trends, or highlight something unexpected.
Get startedJoin us for an expert-led overview of the tools and concepts you'll need to become a Certified Power BI Data Analyst and pass exam PL-300. Register now.
Hello all, I'm attempting to compare two values of Weighted Average Price over a pre and post date set. The formulas I currenlty have are setup like:
Post Period Weighted Avg: sumx(table, quantity * price)/sum(quantity)
Pre Period Weighted Avg: calculate('formula above', all(postdatetable),userelationship(table,predatetable)
The quantity in the post period needs to be held to the same constant value as the pre period quantity. when I attempt to use something like:
Constant WAP: sumx(PostPeriodWAP*calculate(sum(quantity),all(postdatetable),userelationship(table,predatetable)))/calculate(sum(quantity),all(postdatetable),userelationship(table,predatetable))
I get some crazy numbers. How do I go about holding this pre-period constant? The pre period is set to a slicer value to allow the end user to custom set their pre and post period.
HI @jbradley16,
I can't understand your formula, can you please explain more about these with some sample data and expected result?
If you mean nested measures, you can try to use below formula if it suitable for your requirement:
Pre Period Weighted Avg = VAR temp = SUMX ( ALLSELECTED ( table ), [quantity] * [price] ) / SUM ( table[quantity] ) RETURN CALCULATE ( temp, ALL ( postdatetable ), USERELATIONSHIP ( table[date], predatetable[date] ) )
Constant WAP =
VAR temp =
CALCULATE (
SUM ( table[quantity] ),
ALL ( postdatetable ),
USERELATIONSHIP ( table[date], predatetable[date] )
)
RETURN
SUMX ( ALLSELECTED ( table ), [Pre Period Weighted Avg] * temp )
/ temp
Regards,
Xiaoxin Sheng
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
Check out the June 2025 Power BI update to learn about new features.
User | Count |
---|---|
56 | |
55 | |
54 | |
37 | |
29 |
User | Count |
---|---|
77 | |
62 | |
45 | |
40 | |
40 |