Deleting rows that contain specific content

New Contributor

Copying records from a source into excel, each record copies over as either 2 or 3 lines.  Nearly every record contains a unique line with the word "search" in it.  I don't need those lines in my spreadsheet, but don't know how to write a macro that will delete only rows that contain that specific word.  I'm sure its simple, but my programming knowledge is minimal.  Any help would be greatly appreciated!

5 Replies
best response confirmed by RichardA2021 (New Contributor)


You can do this without programming:

  • On the Home tab of the ribbon, in the Sort & Filter group, turn on Filter.
  • From the filter dropdown in the relevant column, select Text Filters > Contains...
  • Enter Search in the box, then click OK.
  • You should now see only the rows containing Search.
  • Delete those rows.
  • Turn off the filter.

@Hans Vogelaar Thank you... that was simple!

@RichardA2021 @Hans Vogelaar Thank you both for this idea. I have a follow-on question too, if you don't mind, Hans:


What if the number of Rows I needed to get rid of were so many that it becomes impractical to delete them individually. Is there a way to say to Excel: "Delete all rows where the column WO_Type = CLOSED." And then for example, 1,500 rows are deleted instantaneously.


Thank you both for your time and consideration.


Best regards,

Rob Allsbrook [ @RookBytes ]



Using the AutoFilter method, you only need to select all rows except the top one after filtering and delete them in one go. Easy-peasy.

Ah, ok. I thought that would delete the hidden rows too. Thanks, Hans