Раджив, попробуй это.Это должно быть быстро.
Option Explicit
Sub Sample()
Dim delrange As Range
Dim LastRow As Long, i As Long
With Sheets("Sheet1") '<~~ Change this to the relevant sheetname
'~~> Get the last Row in Col A
LastRow = .Range("A" & .Rows.Count).End(xlUp).Row
For i = 1 To LastRow
If Len(Trim(.Range("A" & i).Value)) = 0 Then
If delrange Is Nothing Then
Set delrange = .Rows(i)
Else
Set delrange = Union(delrange, .Rows(i))
End If
End If
Next i
If Not delrange Is Nothing Then delrange.Delete
End With
End Sub
РЕДАКТИРОВАТЬ :
Вы также можете использовать автофильтр для удаления строк.Это довольно быстро.Я не проверил оба примера для таких огромных строк :) Дайте мне знать, если у вас появятся какие-либо ошибки.
Option Explicit
Sub Sample()
Dim lastrow As Long
Dim Rng As Range
With Sheets("Sheet1")
lastrow = .Range("A" & .Rows.Count).End(xlUp).Row
'~~> Remove any filters
.AutoFilterMode = False
With .Range("A1:A" & lastrow)
.AutoFilter Field:=1, Criteria1:=""
.Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Delete
End With
'~~> Remove any filters
ActiveSheet.AutoFilterMode = False
End With
End Sub
HTH
Sid