2016-10-26 3 views
0

Мне интересно, есть ли более эффективный способ выбрать матрицу данных из «A1», но с переменным рядом строк и столбцов.наиболее эффективный способ выбора матрицы данных excel vba

Я использую следующий код для выполнения таких задач

Range("A1").Select 
Range(Selection, Selection.End(xlDown)).Select 
Range(Selection, Selection.End(xlToRight)).Select 
Selection.Copy 

есть более быстрый способ добраться до того же диапазона выбран?

благодаря

+0

Спасибо @Slai –

ответ

1

Если вы имеете дело с блоком данных и верхний левый угол является A1, то:

Range("A1").CurrentRegion.Copy 
+0

работает отлично. Спасибо –

1

Если вы знаете конечную точку, то да , вы можете определить два диапазона в справочнике «Диапазон», и он будет использовать один в качестве начальной точки, а другой в качестве конечной точки, например

Range(Range("A1"),Range("Z10")).Copy 

аналогично

Range("A1:Z10").Copy 

так же, если у вас есть диапазон RangeX, вы можете использовать

Range(RangeX, RangeX.offset(2,2)).Copy 

Который всегда будет выбирать квадратный диапазон 3х3 клеток, происходящих из «RangeX "

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