эффективный способ получить доступ к диапазону пользовательского типа? - PullRequest
0 голосов
/ 16 февраля 2011

У меня есть пользовательский тип с около 5000 записей.Я хотел бы выбрать диапазон данных в 1000 блоков ввода и использовать его в качестве массива.Есть ли способ сделать это без зацикливания?

Что-то вроде

 MyArray = MyType(1:1000).property

вместо

 for i = 1 to 1000
     MyArray(i) = MyType(i).property
 Next i

Спасибо!

1 Ответ

0 голосов
/ 16 февраля 2011

Нет, невозможно преобразовать коллекцию элементов в массив без циклических или специальных методов доступа для типа - не говоря уже о преобразовании общего свойства из коллекции элементов в массив.

Только объекты, которые поддерживают что-либо подобное, являются объектами Range, для которых вы можете преобразовать определенные свойства массива ячеек (range) в массив, используя:

MyArray = Range("A1:A1000").Value

Опять же, ничего подобного не доступно для других типовесли программист не столкнется с проблемой определения поведения - и даже если он определит его, вероятнее всего, метод будет включать в себя итерации по элементам в любом случае, просто внутри класса типов.

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