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.
I have a Matrix that looks like this:
Where the columns across the top are being pulled from a single column called Header Group.
I would like to compare the Actual Values matrix column against the Target Values matrix column and color code ONLY the Actual Values background based on whether they are greater than or less than the Target Values.
I tried using the LOOKUPVALUE function and it's not performing how I thought it does.
Example:
Here are links to the files, sometimes my OneDrive doesn't work so I've uploaded it to GoogleDrive as well:
OneDrive - https://1drv.ms/u/s!AoXwZT-xo7jRgfUeCY_uZYYHviqdvA?e=akvQJ6
GoogleDrive - https://drive.google.com/file/d/13cRHlq4f5IQa22NspynS2V-JuA343NFw/view?usp=sharing
Solved! Go to Solution.
Hi @djallarii ,
As per our understanding, you want to show Background colour as:
Also, within your provided power bi report we checked the datatable “Metric_Table” and noticed that Actual Value row is followed with the Target Value row so we used Previous row function.
You can follow below steps to achieve required output.
1. Create Index column using Power Query.
2. Create “Previous row Value” column using DAX expression.
Previous row Value = LOOKUPVALUE('Metric_Table'[Value],'Metric_Table'[Index],'Metric_Table'[Index]-1)
3. Create a Colour Formula based on conditions as below DAX expression.
Color Formula =
var containsTarget =IF(CONTAINSSTRING(Metric_Table[Header Group],"Target value"),TRUE(),FALSE())
return IF(containsTarget, IF('Metric_Table'[Value]<'Metric_Table'[Previous row
Value] ,"GREEN","RED"),BLANK())
4. Now we can use this column to give conditional formatting to the cell as shown in below screenshot,
This results the column with background colour as shown in the below screenshot,
Thanks!
Inogic Professional Services Division
Power Platform and Microsoft Dynamics 365 CRM Development – All under one roof!
Drop an email at crm@inogic.com
Services: http://www.inogic.com/services/
Power Platform/Dynamics 365 CRM Tips and Tricks: http://www.inogic.com/blog/
Hi @djallarii ,
As per our understanding, you want to show Background colour as:
Also, within your provided power bi report we checked the datatable “Metric_Table” and noticed that Actual Value row is followed with the Target Value row so we used Previous row function.
You can follow below steps to achieve required output.
1. Create Index column using Power Query.
2. Create “Previous row Value” column using DAX expression.
Previous row Value = LOOKUPVALUE('Metric_Table'[Value],'Metric_Table'[Index],'Metric_Table'[Index]-1)
3. Create a Colour Formula based on conditions as below DAX expression.
Color Formula =
var containsTarget =IF(CONTAINSSTRING(Metric_Table[Header Group],"Target value"),TRUE(),FALSE())
return IF(containsTarget, IF('Metric_Table'[Value]<'Metric_Table'[Previous row
Value] ,"GREEN","RED"),BLANK())
4. Now we can use this column to give conditional formatting to the cell as shown in below screenshot,
This results the column with background colour as shown in the below screenshot,
Thanks!
Inogic Professional Services Division
Power Platform and Microsoft Dynamics 365 CRM Development – All under one roof!
Drop an email at crm@inogic.com
Services: http://www.inogic.com/services/
Power Platform/Dynamics 365 CRM Tips and Tricks: http://www.inogic.com/blog/
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 |
---|---|
14 | |
9 | |
7 | |
7 | |
6 |
User | Count |
---|---|
21 | |
11 | |
10 | |
9 | |
8 |