VBA - Delete row if cell contents bold text

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

How can this be modified to delete a row if bold text is in a specific column?

On Error Resume Next
Columns(2).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
On Error GoTo 0

Thanks!

Scott
 
Dim CCell As Range

On Error Resume Next
For Each CCell In Intersect(ActiveSheet.Columns(2), ActiveSheet.UsedRange)
If CCell.Characters.Font.Bold Then CCell.EntireRow.Delete
Next CCell
On Error Goto 0

This only works if the entire cell is bolded; if you need to find if any
individual character is bold you would have to step through each Character in
CCell.Characters - that would also take significantly more time to run. So
hopefully this simple version is what you need.
 
That didn't work for me. It had problems with successive cells being blank
(as expected).

Sub BBB()
Dim lastrow as Long, i as Long
lastrow = Cells(Rows.Count, 2).End(xlUp).Row
For i = lastrow To 1 Step -1
If Cells(i, 2).Font.Bold Then
Rows(i).Delete
End If
Next
End Sub

avoids that problem.
 
Hi Scott

I fixed a bug in the delete option on the color tab of the add-in
I upload a new version
 
Back
Top