Forum Discussion

ml0911's avatar
ml0911
Regular Visitor
4 months ago
Solved

Matrix Row Conditional Formatting

I am trying to format a matrix so that the color of the row is tied to the department name. However, it is not applying the color to any values that are 0. See below:

I would like the entire row highlighted in the specified colors, even fields that are 0. I have one measure for specifying the row color and a second measure that forces blank values to be 0 because PowerBI was previously populating as blanks. See both below.

 

 

  • Hi ml0911 ,

     

    Apologies for asking again but there must be something in your model that is impacting the relationships or the calculations.


    On a previous post you refer:

     

    "I just removed a blank row from this table and now it allowing a "one to many" relationship, however this has not fixed the issue with the cells not highlighting."

     

    If now you have a one to many relationship using the values from the one side and making the format has reference you should get the colors on all the rows even for blank values because the context is now the dimension table.

  • Hi ml0911  ,
    The issue occurs because the conditional formatting measure uses SELECTEDVALUE(), which can return BLANK and prevent coloring in some cells. Switching to MAX() in your color measure will ensure consistent formatting across the row, including for cells with 0.


    RowColor =
    VAR Dept =
    MAX('Group Names'[Simple Group Names])
    RETURN
    SWITCH(
    TRUE(),
    Dept = "DPD", "#D9E1F2",
    Dept = "UPD", "#E2EFDA",
    Dept = "TT", "#FFF2CC",
    "#FFFFFF"
    )

    Then keep your conditional formatting set to Format by Field value and use this RowColor measure. This approach ensures the color is applied consistently across all cells in the row, including those displaying 0.

     

28 Replies

  • Hi ml0911 ,

     

    Is the Group Names your Fact table or is it a dimension table connected to your fact? This usually happens because the result of the query is an empty value and does not shows in the "virtual table" that is part of visual.

     

    In the examples below I have the same matrix however one is with the values from the fact and the other is the values from the dimension:

     


    What happens is altough you have a value of 0 in the visualization in this case the value Brazil does not exist in the fact table so no result is given for the condittional formatting.

     

  • ml0911's avatar
    ml0911
    Regular Visitor

    I'm not really sure what a fact table or dimension table is. Sorry. The group names table is a separate table from the one where the matrix is pulling the 'Actual Hrs' values from. They are linked by the department name value. 

    • MFelix's avatar
      MFelix
      Super User

      Hi ml0911 ,

       

      The fact table is where you have all the information for you calculations in this case the Export Table and  Dimension tables describe business entities.

       

      Check this link about this concepts (https://learn.microsoft.com/en-us/power-bi/guidance/star-schema#star-schema-overview)

       

      Concerning the relationship are they done with a one to many relationship?

       

      Can you please share a mockup data or sample of your PBIX file. You can use a onedrive, google drive, we transfer or similar link to upload your files.

      If the information is sensitive please share it trough private message.

      • ml0911's avatar
        ml0911
        Regular Visitor

        Thank you for the explanation. That makes sense. It is a "many to many" relationship. I cannot share the data as it is confidential. Do you know of a workaround for this issue?

  • Instead of fixing blanks in a separate step, make the displayed measure itself return 0:

    Displayed Value =
    COALESCE ( [Your Measure], 0 )

     

    ALso your color logic is fine, but use it as Format by: Field value on the values in the matrix.

    • ml0911's avatar
      ml0911
      Regular Visitor

      I am using it as Format by: Field value. That's how I'm able to change the colors of the rows.

       

      As far as the coalesce function, how is that any different from the +0 method? You're still fixing blanks in a separate step with an additional measure.

  • try inserting &"'" instead of +0

    ActualHoursZero = sum('Export'[Actual Hrs]) &"'"
    or
    ActualHoursZero = (sum('Export'[Actual Hrs])+0) &"'"
    • ml0911's avatar
      ml0911
      Regular Visitor

      Did not resolve the issue just replaced the 0s with ' 

       

      Cells are still not highlighting. Thank you though

      • MFelix's avatar
        MFelix
        Super User

        Hi ml0911 ,

         

        What is the type of relationship you have between the tables?

        Can you share a print screen of the relationships to check how is setup.

  • v-sshirivolu's avatar
    v-sshirivolu
    Community Support

    Hi ml0911 ,

    I would take a moment to thank MFelix  , for actively participating in the community forum and for the solutions you’ve been sharing in the community forum. Your contributions make a real difference.
     

    I wanted to check if you had the opportunity to review the information provided. Please feel free to contact us if you have any further questions.

     

     

    • ml0911's avatar
      ml0911
      Regular Visitor

      The problem is still not solved. No one's suggestions have helped. I cannot share the data because it is confidential information.

  • v-sshirivolu's avatar
    v-sshirivolu
    Community Support

    Hi ml0911  ,

    I’ve reproduced this from my end using a small sample. You can check the attached PBIX file, which includes sample department and fact tables with some zero values. The Matrix is set up so that all rows, including those with zeros, are highlighted correctly. You can use this file to test and adjust the data to match your actual scenario.

    Please find the attached .pbix file.

    Thank you.

    • ml0911's avatar
      ml0911
      Regular Visitor

      This did not solve the problem. The same exact thing is happening, where blank (which are forced 0 in my file) cells are not being highlighted. In the sample file you provided, the entire row (including blank cells) is not highlighted, which is what I'm asking for. 

       

      • v-sshirivolu's avatar
        v-sshirivolu
        Community Support

        Hi ml0911 ,
        I didn’t end up changing the measure or logic, instead, switching the visual from a Table to a Matrix resolved the issue, this works because conditional formatting in Power BI is applied at the value level ,  and in my previous setup some cells were effectively evaluated as blanks rather than actual values, so formatting wasn’t applied, but with the Matrix visual the evaluation context changed and those values were treated correctly, allowing the formatting to apply consistently even for 0s.