VBA: чтение диапазона Excel в массив объектов - PullRequest
0 голосов
/ 04 января 2012

Как мне прочитать диапазон Excel в массив объектов?

Чтобы уточнить, для этого диапазона Excel 6 ячеек ...

John    Roberts    56
Sam     Alito      52

и этот класс ...

Class supremes      
Public firstName        
Public lastName     
Public age  
Dim supreme As New supremes 

Я бы хотел прочитать диапазон Excel в массив supreme, такой что:

arr(1).firstName = "John"   
arr(2).age = 52 

Для стандартного массива это делается с помощью одного присваивания..

arr = range("supremes")

Существует ли подобная команда для заполнения массива объектов?

1 Ответ

4 голосов
/ 04 января 2012

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

dim i as long
dim rData as range
dim vData as variant

set rData=selection

vData=rData

for i=1 to ubound(vdata)
  arr(i).FirstName=vdata(i,1)
  arr(i).LastName=vdata(i,2)
  arr(i).Age=vdata(i,3)
next i
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...