Я пытаюсь удалить пустые строки в диапазоне
Мой код выглядит так:
Dim rng As Range
Dim i As Long, counter As Long
i = 1
Range("B1").Select
Selection.End(xlDown).Offset(0, 5).Select
Set rng = Range("G2", ActiveCell)
Range("G2").Select
For counter = 1 To rng.Rows.Count
If rng.Cells(i) = "" Then
rng.Cells(i).EntireRow.Delete
Else
i = i + 1
End If
Next
Итак, hmqcnoesy любезно помог мне решить сообщение об ошибке. Переменные должны быть Dimmed как LONG, а не INTEGER, потому что целое число не может содержать большое число для всех моих строк данных
Кроме того, Jon49 дал мне код, который был намного эффективнее для этого процесса:
Dim r1 As Range 'Using Tim's range.
Set r1 = ActiveSheet.Range(Range("G2"),Range("B1").End(xlDown).Offset(0, 5))
'Delete blank cell rows.
r1.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Set r1 = Nothing