2016-08-16 6 views
1

По какой-то причине диапазон копирует только первые две строки, начиная с A1 на листе «11937», и мне нужно, чтобы он начинался с ячейки A2 и копировал все данные до столбца AL и вставить эти данные в лист «STS», начинающийся с C2.Скопируйте диапазон данных и вставьте их в отдельную ячейку листа

Пожалуйста, помогите

With Sheets("11937") 
.Range("A2:AL" & Cells(Rows.Count, "B").End(xlUp).Row).CopyDestination:=Sheets("STS").Range("C2") 
End With 

ответ

1

Либо ваш Col B является пустой или Cells(Rows.Count, "B") имеет в виду Activesheet который не может быть11937. Следовательно, всегда желательно полностью квалифицировать ваши объекты.

Вот пример

Dim lRow As Long 

With Sheets("11937") 
    lRow = .Range("B" & .Rows.Count).End(xlUp).Row 

    .Range("A2:AL" & lRow).Copy Destination:=Sheets("STS").Range("C2") 
End With 
+0

Даже при том, что она до сих пор только вставит два ряда в том числе один из них заголовки, которые я не хочу ... – JHags

+0

ли вы Col B пусто? Попробуйте изменить «.Range» («B» & .Rows.Count) .End (xlUp) .Row' to. .Range («A» & .Rows.Count) .End (xlUp) .Row' –

+0

Все столбцы имеют данные – JHags

Смежные вопросы