VBA: многомерные массивы

Программирование на Visual Basic for Applications
malinos
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 16.05.2005 (Пн) 16:54
Откуда: Moscow

VBA: многомерные массивы

Сообщение malinos » 16.05.2005 (Пн) 17:03

Господа, пожалуйста, подскажите:
1. У меня большая таблица в Excel и из неё надо сделать таблицу, состоящую из 4 колонок, но дело в том, что данных много и при преобразовании в 4 колонки они превышают 65534. Хочу все вкинуть в файл csv. Вопрос как делать: сформировать динамический массив в нужном виде, а потом его содержимое выкинуть в файл?

2. Как создать многомерный динамический массив и в цикле его заполнить? Как его определить?

Огромное спасибо.
malinos

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 16.05.2005 (Пн) 17:11

  1. Построчно.
  2. Код: Выделить всё
    dim a() as single
    redim a(1 to x, 1 to y)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

malinos
Начинающий
Начинающий
 
Сообщения: 9
Зарегистрирован: 16.05.2005 (Пн) 16:54
Откуда: Moscow

Сообщение malinos » 16.05.2005 (Пн) 17:17

А какой вариант лучше и правильнее?

1. Открыть файл и циклом с листа Excel выбросить в него все данные.

2. или сначала эти данные в динам массив, а из массива в файл.

Спасибо.
malinos

Димитрий
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 194
Зарегистрирован: 26.01.2005 (Ср) 22:47
Откуда: Волгоград

Сообщение Димитрий » 16.05.2005 (Пн) 18:55

Циклом по листу с 65000 не советую, слишком долго. Если можно используй массив Variant. Типа:
Dim x as Variant
x=Range("A1:D65000")


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 2

    TopList