На листе есть таблица. В первой строке шапка, данные начинаются со строки 2.
Нужно удалить строки, у которых в столбце B пустые ячейки.
			
			
			
				Макрос
Sub Макрос()
    Dim lr As Long, i As Long
    
    
    ' Отключение монитора, чтобы ускорить макрос.
        ' Можено ещё отключить формулы, если их много и если макрос медленно работает.
    Application.ScreenUpdating = False
    
    '1. Сброс автофильтра, чтобы отобразить скрытые строки.
        ' Это нужно для поиска последней строки, т.к. команда End не видит скрытые строки.
    If ActiveSheet.AutoFilterMode = True Then
        ActiveSheet.AutoFilter.ShowAllData
    End If
    
    '2. Поиск последней строки по столбцу A.
    lr = Cells(Rows.Count, "A").End(xlUp).Row
    
    '3. Удаление строк, у которых пусто в столбце B.
    For i = lr To 2 Step -1
        If Cells(i, "B").Value = "" Then
            Rows(i).Delete
        End If
    Next i
    
    '4. Сообщение.
    Application.ScreenUpdating = True
    MsgBox "Готово.", vbInformation
End Sub