Как построить новый диапазон, используя несколько диапазонов в определенном порядке? - PullRequest
0 голосов
/ 03 июля 2019

У меня таблица Excel в диапазоне от A до E столбцов с 50 строками.Строка 1 является заголовком таблицы.Я хочу определить объект Range, который содержит C2: C50 и B2: B50 с этим порядком.Это означает, что конечный объект должен быть матрицей 2x49, в которой первый столбец сделан из данных в C, а второй столбец из B. Я использовал следующие команды, но он по-прежнему возвращает данные в том же порядке, что и в справочной таблице.,(первый B, второй C).У кого-нибудь есть идеи?

Set rng1 = Sheets("Sheets1").Range("C2:C50") 
Set rng2 = Sheets("Sheets1").Range("B2:B50") 

Set rng = Range(rng1.Address & "," & rng2.Address)

1 Ответ

1 голос
/ 03 июля 2019

Используйте метод Application.Union , чтобы объединить 2 диапазона:

Set rng = Application.Union(rng1, rng2)

Комбинация диапазонов не имеет порядка. Если вы хотите переупорядочить диапазоны, вам нужно будет сделать это на самом листе или считать данные в массив (в том порядке, в котором вы хотите их иметь).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...