Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
5 years ago
Solved

Need Help with DAX

Hi Power BI Community,

 

I need help in writing DAX for the below scenario, please find image attached.

 

 

I have 3 Columns, Customer, brand and Value.

 

If I select any slicer from Customer Column the % Share should be calculated wrt to the parent Customer.

 

That is if if only L and M are selected it should be 10/30 and 20/30

But if only L and N are selected it should be 10/10 and 30/30.

 

Please help, thanks in advance.

  • Hi Anonymous ,

     

    Create a measure as below:

     

    Measure = 
    var _num=SUM('Table'[Value])
    var _deno=CALCULATE(SUM('Table'[Value]),FILTER(ALLSELECTED('Table'),'Table'[Customer ]=MAX('Table'[Customer ])))
    Return
    DIVIDE(_num,_deno)

     

    And you will see:

    For the related .pbix file,pls see attached.

     

    Best Regards,
    Kelly

    Did I answer your question? Mark my post as a solution!

     

5 Replies

  • Please define "parent Customer"  - is that the brand?

     

    Are you saying 10/10 and 30/30 because the customers are different between brands L and N ?

    • Anonymous's avatar
      Anonymous
      Not applicable

      Hi lbendlin 

       

      I'm saying 10/10 and 30/30 because the customer name is different.

  • Anonymous Try these measure:

     

    Sum Value = SUM ( 'Table'[Value] ) 
    
    % = DIVIDE ( [Sum Value], CALCULATE ( [Sum Value], ALLSELECTED ( 'Table'[Brand] ) ) )

     

    Check my latest blog post Comparing Selected Client With Other Top N Clients | PeryTUS  I would ❤ Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos to whoever helped to solve your problem. It is a token of appreciation!

    Visit us at https://perytus.com, your one-stop-shop for Power BI-related projects/training/consultancy.

  • v-kelly-msft's avatar
    v-kelly-msft
    Community Support

    Hi Anonymous ,

     

    Create a measure as below:

     

    Measure = 
    var _num=SUM('Table'[Value])
    var _deno=CALCULATE(SUM('Table'[Value]),FILTER(ALLSELECTED('Table'),'Table'[Customer ]=MAX('Table'[Customer ])))
    Return
    DIVIDE(_num,_deno)

     

    And you will see:

    For the related .pbix file,pls see attached.

     

    Best Regards,
    Kelly

    Did I answer your question? Mark my post as a solution!