Ваш вопрос подразумевает, что у вас будет больше критериев для поиска, поэтому я решил продолжить.Вы можете добавить больше критериев здесь, когда вы идете ~
- Цикл по
Column A
- Если значение пусто, добавьте ячейку в
Union
(набор ячеек) - Как только цикл завершен, скопируйте
Union
все сразу
Это можно улучшить, переключившись с цикла For i
на цикл For Each
, чтобы пройтидиапазон.Другой способ сделать это - просто отфильтровать Column A
по пробелам и скопировать / вставить видимые оставшиеся строки.
Option Explicit
Sub Blanks()
Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("data")
Dim db As Worksheet: Set db = ThisWorkbook.Sheets("No LoadID")
Dim LROw As Long, i As Long, Blanks As Range
For i = 2 To ws.Range("A" & ws.Rows.Count).End(xlUp).Row
If ws.Range("A" & i) = "" Then
If Not Blanks Is Nothing Then
Set Blanks = Union(Blanks, ws.Range("A" & i))
Else
Set Blanks = ws.Range("A" & i)
End If
End If
Next i
If Not Blanks Is Nothing Then
Blanks.EntireRow.Copy db.Range("B" & db.Rows.Count).End(xlUp).Offset(1, -1).Row
End If
End Sub