How to Change Text Color Based on Value with Excel Formula

Get FREE Advanced Excel Exercises with Solutions!

Fortunately, datastore, process, and manipulation are very familiar uses of Microsoft Excel. When we work with a large amount of data, sometimes we need to identify our required data by changing the color of the data. In this article, we will discuss 3 suitable ways to change text color based on the value with Excel Formula with appropriate illustrations.

overview of excel formula to change text color based on value

Here, we have used Excel formula in Conditional Formatting to change text color based on value. Read through the rest of the part to learn more along with some other methods in detail.


Excel Formula to Change Text Color Based on Value: 3 Ways

Here, we will demonstrate several methods to change the text color based on the value in Excel with formulas. For this purpose, we have taken a data set of some with the balance of their bank account. Usually, Conditional Formatting can work only with functions that return only TRUE or FALSE. Example: OR, ISODD, COUNTIF, etc. functions.

Sample Dataset showing employee balance in usd

Usually, no native Excel formula alone can change the text color. However, Excel Conditional Formatting and Excel VBA Macros are used to change the text color based on conditions. In the following section, we will provide 3 formulas to use in Excel Conditional Formatting and change the text color based on value.


1. Using ISODD Function

The ISODD function finds an odd number. In this method, we will use this function-based Excel formula to change the text color based on value.

Steps:

  • First, select the column where you want to change text color.
  • Now, go to the Home tab.
  • Then, select the New Rule from the Conditional Formatting.

insert new rule in conditional formatting option

  • Now, select Use a formula to determine which cells to format as the Rule Type.
  • Now, write the formula as mentioned in the image. The formula is:
=ISODD(C5)
  • Then click on the Format.

use ISODD formula in Conditional Formatting

  • Now, select the font color and press OK.

Format cells dialog box

  • Here, we will get a Preview of the font color.

Using ISODD Function to change text color based on value in excel

  • Finally, press OK and we can see that the odd numbers on the Balance column are showing with changing color.

excel formula to change text color based on value final result


2. Changing Text Color Based on Value with OR Function

Furthermore, we will use the OR function here. Hence, follow the steps below.

Steps:

  • Firstly, select the desired column and go to the New Rule option as shown previously.
  • Now, write the formula:
=OR(B5="John",C5>400)
  • Also, select the format like previously.

choosing Text Color Based on Value with OR Function in Excel

  • Lastly, press OK and we see that the text color is changed.

Final result to change Text Color Based on Value with OR Function

Read More: Change Font Color Based on Value of Another Cell in Excel


3. Applying COUNTIF Function to Change Text Color Based on Value

The COUNTIF function is used to count something with given criteria. Hence, follow the steps below.

Steps:

  • Initially, we modify the data set for applying the mentioned formula.

sample dataset for inserting countif function

  • Now, write the formula in the New Rule option shown previously.
  • The formula will be:
=COUNTIF(C5,B5)>0

Applying COUNTIF Function to Change Text Color Based on Value in Excel

  • Finally, press OK and we see that the matching names of column B are turned red as we mentioned.

Final output for inserting countif function


How to Apply VBA Code to Change Text Color Based on Value

In this section, we will apply the VBA codes to change the color of text based on value. See the following steps. However, we set conditions on the VBA code to change the color of the negative and positive numbers. And as a result, color-changing is showing.

Steps:

  • Firstly, hold the Alt + F11 keys in Excel, which opens the Microsoft Visual Basic Applications window.
  • Secondly, click the Insert button and select Module from the menu to create a module.

insert module in vba window

  • Now, write the following code on the VBA command module.
Sub Text_Color()
Dim WorkRng As Range
xTitleId = "ExcelDemy"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each cell In WorkRng
If cell.Value > 0 Then
cell.Font.Color = vbGreen
ElseIf cell.Value < 0 Then
cell.Font.Color = vbRed
End If
Next
End Sub

VBA Code to Change Text Color Based on Value in Excel

VBA Code Breakdown

  • Initially, we create a new procedure Sub in the worksheet using the below statement.

Sub Text_Color()

  • Then, we declare variables as below.
Dim WorkRng As Range
xTitleId = "ExcelDemy" 
  • Thirdly, we set the variables and select the range.
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
  • After that, we activate it and started an IF loop for each cell. However, it checks the value and provides preset color.
For Each cell In WorkRng
If cell.Value > 0 Then
cell.Font.Color = vbGreen
ElseIf cell.Value < 0
Then cell.Font.Color = vbRed
End If
Next
  • Lastly, we end the Sub of the VBA macro as
End Sub
  • Fourthly, press the F5 key to run the code.
  • After that, a dialog box will show the input range and we select a range.

vba code range dialog box

  • Finally, press OK and you will get your desired output.

Result after applying vba code in excel

Read More: Excel Conditional Formatting Based on Multiple Values of Another Cell


Practice Section

We have provided a Practice section on the right side of each sheet so you can practice yourself. Please make sure to do it by yourself.

practice section


Download Practice Workbook

Download this practice workbook to exercise while you are reading this article.


Conclusion

In this article, we described the Excel formula to change the text color based on the value. I hope this will satisfy your needs.


Related Articles

<< Go Back to Conditional Formatting with Multiple Conditions | Conditional Formatting | Learn Excel

What is ExcelDemy?

ExcelDemy - Learn Excel & Get Excel Solutions Center provides online Excel training , Excel consultancy services , free Excel tutorials, free support , and free Excel Templates for Excel professionals and businesses. Feel free to contact us with your Excel problems.
Alok Paul
Alok Paul

Alok Paul has completed his B.Sc. in Electronics and Telecommunication Engineering from East West University. He has been working on the ExcelDemy project for more than 2 years. He has written 220+ articles and replied to numerous comments. He is experienced in Microsoft Office, especially in Excel. He also led some teams on Excel and VBA content development. He has a keen interest in Advanced Excel, Data analysis, Excel Pivot Table, Charts, and Dashboard. He loves to research... Read Full Bio

2 Comments
  1. I am a containment Engineer. I want a formula for Excel to return the words replace, review when the result cell shows “Fail”.I’d like the text to turn red as a visual aid.
    I just cant get one to work.
    I’m new to Excel.
    Can you help me please.
    Best regards
    [email protected]

    • Reply Avatar photo
      Raiyan Zaman Adrey Jul 27, 2023 at 11:43 AM

      Dear COLYNN BURRELL,

      Thanks for reading our article. Try the following formula to resolve your issue.
      =IF(C5="Fail", TEXT("Replace, Review", "[$-409]@"), "")

      The formula indicates that if cell C5 contains text Fail, then the formula will return Replace, Review. If not, then the result it will return will be blank.

      Dataset

      Formula Breakdown
      TEXT(“Replace, Review”, “[$-409]@”)
      This formula returns Replace, Review each time.
      IF(C5=”Fail”, TEXT(“Replace, Review”, “[$-409]@”), “”)
      This formula returns Replace, Review only for the text string Fail.

      Now to add red color to the output, use the conditional formatting feature as illustrated in this article.
      ● Select the range D5:D9.
      ● Go through these steps: Home >> Conditional Formatting >> New Rule.

      conditional formatting

      ● Now, select Format only cells that contain from the Select a Rule Type section.
      ● Select Specific Text.
      ● Type Replace, Review.
      ● Click on Format.

      new formatting rule bar

      ● Select Font.
      ● Click on the arrow down icon in the color section.
      ● Select the color red.
      ● Click on OK.

      selecting color

      ● Click on OK again.

      formatting

      ● And the output will be as follows as you have desired.

      output

      Note: However, you can’t change the color of the output just after applying the formula. You have to use conditional formatting for that.

      If the problem still appears, kindly send us your Excel file and specify the exact problem you are facing.
      Thank you

      Best Wishes,
      Raiyan Zaman Adrey

Leave a reply

Advanced Excel Exercises with Solutions PDF

 

 

ExcelDemy
Logo