Хотите сделать:
A.Если в листе данных есть только одна строка, скопируйте и вставьте этот одиночный ряд и вставьте его в именованный лист
B.Если естьнесколько строк данных, скопируйте все, затем вставьте
Проблемы, связанные с текущим кодом: он игнорирует первое условие if и переходит прямо к следующему, которое копирует диапазон и все ниже, даже если присутствует только одна строка данных.
вот мой код со следующими условиями:
ws2 = исходная таблица данных
wsA = данные листа будут вставлены в
скопированные данные, если условиявстречаются должны быть вставлены в последнюю доступную пустую строку в столбце A WSA
k = ws2.Range("a6", ws2.Range("a6").End(xlDown)).Rows.Count
If k <= 1 Then
ws2.Activate
rngB.Select
Selection.Copy
wb2.Activate
wsA.Activate
Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Else
ws2.Activate
rngB.Select
Range(rngB, ActiveCell.End(xlDown)).Select
Selection.Copy
wb2.Activate
wsA.Activate
Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
Application.CutCopyMode = False
End If
лист данных