Forum Discussion
Divide by Zero error
- Anonymous7 years ago
Think this should work:
% Change = SUMX ( Summary, DIVIDE( (Summary[CQ] - Summary[PYQ] ), //Numerator Summary[PYQ] , //Denominator "If Error, put something here!" //Alternate Result ) )
Without seeing exactly what you are talking about, what if you tried this:
% Change =
SUMX (
Summary,
DIVIDE(
(Summary[CQ] - Summary[PYQ] ), //Numerator
Summary[PYQ] , //Denominator
0 //Alternate Result
)
)I couldnt screen shot my table here but it shows like this
% Change
-4%
-3%
-100%
-100% being the one I want to show 0% and there's no change after I applied the latest formula.
- Anonymous7 years agoNot applicable
Let's try this one. Basically added in logic that if either the absolute values of the values we need to divide is 0, then we want a 0 there, if not to the normal divide.
Just need to substitute out my generic table and measures for yours:
% Change = SUMX( VALUES( Table1[Index] ), CALCULATE( IF ( OR ( ABS([Total Item1] ) = 0, ABS( [Total Item 2]) = 0 ), 0, DIVIDE( ( [Total Item 2] - [Total Item1]), [Total Item1] ) ) ) )- Anonymous7 years agoNot applicable
Basically I got confused by the your last formula so I changed the whole formula to use an IF statement and it now works for me. The -1.0 is what gives -100% when converted to percentage.
% Change PYQ = IF(DIVIDE(SUM(Summary[CQ])- SUM(Summary[PYQ]), //NumeratorSUM(Summary[PYQ]) //Denominator) = -1.0, 0,DIVIDE(SUM(Summary[CQ])- SUM(Summary[PYQ]), //NumeratorSUM(Summary[PYQ])))