2017-01-25 3 views
1

У меня есть инструкция в VBA для создания диапазона, который затем выбирается и копируется. После этого я вставляю это где-то еще. Но последняя строка вставлена ​​без новой строки, поэтому я хотел бы расширить свой диапазон на один. Мой текущий отчет:Excel VBA: Можно ли просто расширить диапазон на один?

Set twoRange = Range("A2", Range("A2").End(xlDown)) 
twoRange.Select 
twoRange.Copy 

Каков самый простой способ расширить этот диапазон на одну строку вниз?

ответ

3

Да:

Set twoRange = Range("A2", Range("A2").End(xlDown).Offset(1)) 
twoRange.Copy 

Вы используете Offset, чтобы переместить еще одну ячейку вниз. Смещение использует этот формат: `Смещение (строки, [столбцы])

Вам также не нужно выбирать диапазон для копирования диапазона.

+1

Вам даже не нужно устанавливать диапазон и идти: 'Диапазон (« A2 », диапазон (« A2 »). Конец (xlDown) .Offset (1)). – user3598756

0

Вы можете сделать

Set twoRange = Range("A2:A" & Range("A2").End(xlDown).Row + 1) 

который добавляет один к строке, найденной с помощью xlDown подхода.