Change Background Color of Cell Range in Excel VBA

Home/Excel VBA/Change Background Color of Cell Range in Excel VBA


It is an interesting feature in excel, we can change background color of Cell, Range in Excel VBA. Specially, while preparing reports or dashboards, we change the backgrounds to make it clean and get the professional look to our projects.



50+ Project Management Templates Pack
Excel PowerPoint Word

Advanced Project Plan & Portfolio Template
Excel Template

Business Presentations Templates Pack
PowerPoint Slides

20+ Excel Project Management Pack
Excel Templates

20+ PowerPoint Project Management Pack
PowerPoint Templates

10+ MS Word Project Management Pack
Word Templates

Change Background Color of Cell Range in Excel VBA – Solution(s):

Delete Worksheet in Excel VBA
We can use Interior.Color OR Interior.ColorIndex properties of a Rage/Cell to change the background colors.

Change Background Color of Cell Range in Excel VBA – Examples

The following examples will show you how to change the background or interior color in Excel using VBA.

Example 1

In this Example below I am changing the Range B3 Background Color using Cell Object

Sub sbRangeFillColorExample1()
'Using Cell Object
Cells(3, 2).Interior.ColorIndex = 5 ' 5 indicates Blue Color
End Sub
Example 2

In this Example below I am changing the Range B3 Background Color using Range Object

Sub sbRangeFillColorExample2()
'Using Range Object
Range("B3").Interior.ColorIndex = 5
End Sub
Example 3

We can also use RGB color format, instead of ColorIndex. See the following example:

Sub sbRangeFillColorExample3()
'Using Cell Object
Cells(3, 2).Interior.Color = RGB(0, 0, 250)
'Using Range Object
Range("B3").Interior.Color = RGB(0, 0, 250)
End Sub
Example 4

The following example will apply all the colorIndex form 1 to 55 in Activesheet.

Sub sbPrintColorIndexColors()
Dim iCntr
For iCntr = 1 To 56
Cells(iCntr, 1).Interior.ColorIndex = iCntr
Cells(iCntr, 1) = iCntr
Next iCntr
End Sub
  1. Open an excel workbook
  2. Press Alt+F11 to open VBA Editor
  3. Insert a new module from Insert menu
  4. Copy the above code and Paste in the code window
  5. Save the file as macro enabled workbook
  6. Press F5 to execute the procedure
  7. You can see the interior colors are changing as per our code

Change Background Color of Cell Range in Excel VBA – Download: Example File

Here is the sample screen-shot of the example file.

Download the file and explore how to change the interior or background colors in Excel using VBA. – ColorIndex

By |February 9th, 2013|Excel VBA|2 Comments

About the Author:

Excel VBA Developer having around 8 years of experience in using Excel and VBA for automating the daily tasks, reports generation and dashboards preparation. Valli is sharing to helps us automating daily tasks.


  1. Harbinder Singh April 13, 2017 at 12:23 PM - Reply

    need help in excel

    In company there are 10000 employee and all having duty in A shift, B shift, C shift. Each shift of 08 hrs

    i have to find those employee who work continuous 10 days or more then 10 days

    please help me to find the solution using VB macro in excel or any other way to find from huge no of data in excel

    Kindly provide me the solution.

  2. RandomOne May 23, 2017 at 5:46 AM - Reply

    Harbinder Singh
    its dependes of your database, can check with a vba code for filter based on the criteria, select the range and then color it,

Leave A Comment

Related pages

excel vba close userformexcel sort column alphabeticallyvba msgbox variablecreate check box in excelactivecell columnworksheets vba excelhow to add a developer tab to the ribbonproject dashboards templatesinserting charts in excelhow to search for blank cells in excelsample xlsm file downloadexcel rgb color codessas and sql trainingpassword vbams excel remove duplicate rowshow to protect spreadsheet with passwordhyperlink examplesadvanced excel 2010 tutorial pdfrgb excel vbaremove blank rowvba color numbersfor each loop in vbaexcel delete row vbahow to make drop down list in excel 2007vba excel active cellinterview basic questions and answers for fresherspivot sql examplesvba userform textboxexcel advanced tutorialsfinding duplicates in excel 2010excel sheet vbaweekly project status report template powerpointexcel vba moduleswhat is ado connectionarrange numbers in ascending order in excelproject management dashboard template excelunprotect excellexcel vba list files in foldervlookup examples 2010excel consolidate worksheetsmsgbox syntax in vbvba excel torrentgetopenfilename excelhow to countif in excelvba codingvisual basics for excelcreate a pivot chartvlook up examplevba scripting filesystemobjectexcel formulas with examplesworkbook sheetsexcel dashboard vbaoops tricky interview questionvba averagevlookup rangeunhide column a in excel 2010most useful excel macrossql advanced concepts with examplesvba msgbox yes no examplevba programs for excelvisual basics codesexcel macro templatelook up formula excelhow to find double entry in excel 2007excel transpose macrounlock excel spreadsheet without passwordhow to select multiple rows in excelvba excel open text fileformatting graphs in excelexcel forum vbavba oledbexcel reporting templates dashboardhow to unhide an excel columnmsgbox vbokonlyranking chart excelformula sumif