Method 1 – Using the Find Feature to Delete Rows with Specific Text
Delete all the rows matched with the text “Alan.” We’ll show deletion for both Partial Matching and Full matching using the Find feature of Excel.
1.1. Delete Rows with Partial Matching Text in Excel
In this, we will delete rows with partially matched text. In our dataset, we have two rows containing the names “Alan” and “Alan Marsh.” We can use partial matching to remove these two rows.
Steps:
- From the Home tab, go to Find & Select and then click Find.
- The “Find and Replace” dialog box will appear. You can use CTRL + F to open this.
- Type “Alan” in the Find what: box.
- Click Find All. Two results will be shown.
- You need to select those two by using SHIFT + Click.
- After selecting, click on Close.
- Right-click on any of the selected rows to show the Context Menu bar.
- Select Delete.
- Select the Entire row from the dialog box.
- Click on OK.
Rows containing the text “Alan” are not there anymore.
See the result below.
1.2. Using Find Feature to Delete Rows with Full Matching Text
From the same dataset, we will remove the text “Alan” only (not “Alan Marsh”).
Steps:
- Bring up the Find and Replace dialog box by following the previous method.
- Select Options>>.
We will only remove the text “Alan”. So we need to –
- Put a tick in Match entire cell contents.
- Click Find All.
Notice that only row 6 is selected.
- Select that result.
- Click Close.
- Right-click on that result to bring up the Context Menu.
- Click Delete.
- Select Entire row.
- OK.
The result will be like this. Only the row with the text “Alan” will be deleted.
The row with “Alan Marsh” will be intact.
Method 2 – Delete Rows with Matching Specific Text Using Filter
We can also use the Excel Filter command to delete rows with matching text. Our dataset contains the Names, Birth Years, and Heights of 10 people.
2.1. Generic Method of Using Filter to Delete Row Containing Specific Text
Delete the row that contains the text “Bruce” using the Filter command of Excel.
Steps:
- Select the range where you want to apply Filter.
- We selected the range B4:D14.
- From the Data tab, select Filter.
See three Excel Filter icons appear in the column header.
We want to remove the rows that contain the text “Bruce”.
- Select the Name column and Expand Filter icon.
- Uncheck (Select All).
- Check “Bruce”.
- Then OK.
Row with “Bruce” will be shown.
- Right-click on the row to bring up the Context Menu.
- Delete Row.
A warning message will appear.
- Click OK.
Notice there is nothing. We can bring back the other rows by clearing the Filter criteria.
- Click the Filter button of the Name column.
- Select Clear Filter From “Name”.
There is no row with the text “Bruce”.
2.2. More Than One Word Matching
Steps:
- Select “Gina” and “Bruce” in the Excel Filter dropdown box.
- Follow the previous method 2.1 to Delete multiple rows.
2.3. Delete Rows with Specific Words and Conditions
Remove rows with matching text and criteria too. We have a similar dataset from above. However, this time we have three people named “Gina”. Now we want to remove the rows containing the name “Gina” and those born after 1990.
Steps:
- Click on the Filter icon of the Born column.
- From Number Filters, select Greater Than…
- Put 1990 in the “is greater than” box.
- Press OK.
We will get the following result.
- From the Name Filter icon, select “Gina”.
- Press OK.
- Select the rows and right-click to open the Context Menu.
- Select Delete Row.
- Click OK.
- Remove the Filter to show all the data.
Get the dataset without the text “Gina” born after “1990“.
Method 3 – Delete Rows Containing Specific Words by Applying VBA
Our dataset contains sales rep, their region, and total sales volume. We want to remove the “East” Region from this data set. VBA can be used to remove rows with matched text.
Steps:
- Press ALT + F11, or from the Developer tab select Visual Basic to open the VBA window.
- Go to Insert, Module.
- Thirdly, Write the following code in the Module.
Sub DeleteRowsWithSpecificText()
Dim x1 As Range
For Each x1 In Range("c5:c14")
If x1.Value = "East" Then
x1.EntireRow.Delete
End If
Next x1
End Sub
- Run the code from Run Sub/UserForm.
You can press F5 to do that.
The rows containing the word “East” are deleted from the dataset.
Download Practice Workbook
You can download the Excel file from this link.
Related Articles
- How to Delete All Rows Not Containing Certain Text in Excel
- How to Delete Rows Based on Another List in Excel
- How to Delete Blank Rows in Excel
- Delete Row If Cell Contains Specific Values in Excel
- How to Delete Row If Cell Is Blank in Excel
- How to Delete Empty Rows at Bottom in Excel
- How to Delete All Rows Below a Certain Row in Excel?
- How to Remove Highlighted Rows in Excel?
<< Go Back to Delete Rows | Rows in Excel | Learn Excel
Get FREE Advanced Excel Exercises with Solutions!