Чтобы получить ПЕРВУЮ пустую ячейку в столбце, вы можете использовать:
With objSheet
If .Range("A1") = "" Then
iRow = 1
ElseIf .Range("A2") = "" Then
iRow = 2
Else
iRow = .Range("A1").End(xlDown).Offset(1, 0).Row
End If
End With
Вы должны сначала проверить, пуста ли первая строка или вторая строка, потому что End(xlDown)
ведет себя иначе, если строка 1 не являетсяПустая и вторая строка пуста, она может быть пропущена и возвращает неправильное значение.