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! Learn more

Reply
350z
Helper I
Helper I

Incorrect Total

Total Value for Table on left should be 6.71, not 4.52. How can I achieve this, here is my measure applied:

 

 

ft per = (((AVERAGEA('51039 BI'[Feet Installed (ft)])) / (AVERAGEA([Total Feet (ft)])))*100)

 

 

350z_0-1712935512866.png

Thank you

1 ACCEPTED SOLUTION

 

Try this measure:

_FeetPer = 
VAR __feetPer =
AVERAGEX(
    YourTable,
    VAR __feetInst = IF(YourTable[FeetInstalled] <> 0, YourTable[FeetInstalled])
    VAR __feetTotal = IF(YourTable[TotalFeet] <> 0, YourTable[TotalFeet])
    RETURN
    DIVIDE(__feetInst, __feetTotal, BLANK()) * 100
)
RETURN
IF(
    HASONEVALUE(YourTable[LaborCode]),
    __feetPer,
    DIVIDE(
        __feetPer,
        CALCULATE(
            DISTINCTCOUNT(YourTable[LaborCode]),
            ALLSELECTED(YourTable)
        ),
        BLANK()
    )
)

 

BA_Pete_0-1713115747934.png

 

Pete



Now accepting Kudos! If my post helped you, why not give it a thumbs-up?

Proud to be a Datanaut!




View solution in original post

3 REPLIES 3
BA_Pete
Super User
Super User

Hi @350z ,

 

On what basis are you expecting the result to be 6.71? From what I can see, (102.61 / 2268.74) * 100 = 4.52.

Can you explain the logic you're using to get to the 6.71 figure please?

 

Pete



Now accepting Kudos! If my post helped you, why not give it a thumbs-up?

Proud to be a Datanaut!




4.52 would be correct for an overall percentage that I'll be using on another visual. 6.71 should be the mean.

(20.13+0+0) = 20.13...

3/20.13 = 6.71

 

The table on the left will always give a total overall percentage even if specific, not all, selections are made in a slicer?

 

 

Try this measure:

_FeetPer = 
VAR __feetPer =
AVERAGEX(
    YourTable,
    VAR __feetInst = IF(YourTable[FeetInstalled] <> 0, YourTable[FeetInstalled])
    VAR __feetTotal = IF(YourTable[TotalFeet] <> 0, YourTable[TotalFeet])
    RETURN
    DIVIDE(__feetInst, __feetTotal, BLANK()) * 100
)
RETURN
IF(
    HASONEVALUE(YourTable[LaborCode]),
    __feetPer,
    DIVIDE(
        __feetPer,
        CALCULATE(
            DISTINCTCOUNT(YourTable[LaborCode]),
            ALLSELECTED(YourTable)
        ),
        BLANK()
    )
)

 

BA_Pete_0-1713115747934.png

 

Pete



Now accepting Kudos! If my post helped you, why not give it a thumbs-up?

Proud to be a Datanaut!




Helpful resources

Announcements
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!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

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

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 Kudoed Authors