Delete rows based on Cell Color using VBA

Home/VBA/Delete rows based on Cell Color using VBA

VBA code to vba delete rows based on cell color example will help us to delete rows based on cell background fill color from excel worksheet. We can use Delete method of Rows to delete the rows based on Cell Color. In this example we will see how to delete the rows in excel worksheet using VBA based on Cell Color. VBA code for deleting rows based on Cell Color macro should work for all the version of Microsoft Excel 2003, Excel 2007, Excel 2010, and Excel 2013.



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

VBA delete rows based on cell color

Here is the Example VBA syntax and Example VBA Macro to delete rows from excel worksheets based on Cell Color. This will help you to know how to delete specific rows based on cell background color from Excel workbook using VBA.

VBA Delete rows based on Cell background Color: Syntax

Following is the VBA syntax and sample VBA code to delete rows based on Cell Color from worksheet using VBA. We are using the Delete method of the Rows object of worksheet.

If Then Rows(“

[Row Numbers]”).EntireRow.Delete

Here is the color condition which you want to check to delete rows. And Row Numbers are the row numbers to delete. And EntireRow.Delete method will delete the Entire rows from the Excel spreadsheet.

Delete rows based on Cell Color using VBA: Examples

The following VBA code is to delete rows based on Cell Color from the excel worksheet. This code will delete the rows (1 to 20) if it satisfy the color condition if cell background is red.

Sub sbDelete_Rows_Based_On_Cell_Color()
Dim lRow As Long
Dim iCntr As Long
lRow = 20
For iCntr = lRow To 1 Step -1
If Cells(iCntr, 1).Interior.ColorIndex = 3 Then ‘3=Red
End If
End Sub

Instructions to run the VBA code to delete rows based on Cell Color

Please follow the below steps to execute the VBA code to delete rows based on Cell Color from Excel worksheets.
Step 1: Open any Excel workbook
Step 2: Press Alt+F11 – This will open the VBA Editor
Step 3: Insert a code module from then insert menu
Step 4: Copy the above code and paste in the code module which have inserted in the above step
Step 5: Enter some sample data in first column from row 1 to 20 and fill some cell with red background color to test.
Step 6: Now press F5 to execute the code

Now you can observe that the rows are deleted from worksheet if cells in Range A1 to A20 with red background color.

Explained VBA Code to Delete Rows based on Cell Color

Strating program and sub procedure to write VBA code to delete rows based on Cell Color.

Sub sbDelete_Rows_Based_On_Cell_Color()

‘Declaring the variable lRow as long to store the last row number
Dim lRow As Long

‘Declaring the variable iCntr as long to use in the For loop
Dim iCntr As Long

‘Assigning the last row value to the variable lRow
lRow = 20

‘Using for loop
‘We are checking the each cell if background color is red
‘And deleting the row if true
For iCntr = lRow To 1 Step -1
If Cells(iCntr, 1).Interior.ColorIndex = 3 Then ‘3=Red
End If

‘Ending the macro to delete the rows based on Cell Color using VBA
End Sub

Here you can observe that we are looping through the cells from bottom to up. This is the best approach to delete the rows based on the cell background color.

By |April 21st, 2014|VBA|2 Comments

About the Author:

PNRao is a passionate business analyst and having close to 10 years of experience in Data Mining, Data Analysis and Application Development. This blog is his passion to learn new skills and share his knowledge to make you expertise in Data Analysis (Excel, VBA, SQL, SAS, Statistical Methods, Market Research Methodologies and Data Analysis Techniques).


  1. Hamza Ben Sayeh January 21, 2016 at 1:31 AM - Reply

    end if without block if (compile error)

  2. Saeed July 27, 2016 at 10:32 PM - Reply

    Same error
    End If without block If (Compiler error)

Leave A Comment

Related pages

vba delete entire rowconvert excel file to xmlmacros for beginnersvba excel passwordopen a workbook in excel vbahow to combine multiple excel sheets into oneunload me vba excelvba autofilter sorthow to unlock a excel fileexcel color formula for cellsql basic commandsadvanced excel 2007 formulas with exampleshow to apply vlookup formula in excelsample vba projectsvba application.displayalertsvlookup with isnaexcel sumif examplevba if then else exampleexcel 2007 vba macro programming pdfexcel vba forecolorconsolidate excel worksheets into onewhat is macros in excel 2007excel vba clear rangeexcel adoexcel startup macroshortcut key to delete a row in excelvba tutorial for beginnersexcel developer menumacro excel definitiondelete cells in excelexcel change columns to rowsaccess vba sqlexcel offset formulagantt chart template for wordhow to access vba in excel 2007range select vbaascending and descending order in excelsas code tutorialhide rows excelmonthly one on one meeting templatelocate duplicates in excelhow to use the sumif function in microsoft excel 2010excel vba ebookhow to identify duplicates in excelvba code samplesexcel conditional rangedashboard using excelcost estimation software free downloadcheckbox vba excelhow to insert a textbox in excelhow do you hide a column in excelmicrosoft excel sumif functionconvert from excel to xmlvba thisworkbookexcel macro userformexcel macro columnexcel vba picturedefinition of hlookup in excelupdate access vbacell format vbaopen excel without macrosdcl commandunhide access tablecombo boxes in excelvba macros tutorialsinsert hyperlink excelexcel hyperlink to pdfexcel find duplicate valuesfilesystemobject copyfilevba excel subexcel vba interior.colorindexcost analysis spreadsheet templatemeeting recap formatvba destinationcreating excel dashboards 2010insert row excel macrohow to learn excel macrosunhide hidden workbook