|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.11.2009, 12:16 | #1 |
Форумчанин
Регистрация: 29.10.2008
Сообщений: 294
|
Работа с массивами
Всем Доброго дня!
Есть на листе непрерывный набор данных типа Long в диапазоне A1:C300. Можно ли эти данные поместить в 2-ух мерный массив статический (Dim My_Array(299, 2) As Long)? |
23.11.2009, 12:20 | #2 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Можно:
Код:
Чем шире угол зрения, тем он тупее.
|
23.11.2009, 12:32 | #3 |
Форумчанин
Регистрация: 29.10.2008
Сообщений: 294
|
ОГО, так просто! Спасибо!
|
23.11.2009, 12:53 | #4 |
Форумчанин
Регистрация: 29.10.2008
Сообщений: 294
|
SAS888, а если вместо А1 и С300 будут переменные с адресами ячеек, то так будет правильно?
Код:
|
23.11.2009, 13:02 | #5 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Нет. Вместо "A1" и "C300" можно использовать ссылки на ячейки. например:
Код:
Код:
1. Диапазон ячеек должен быть непрерывный (иначе - ошибка). 2. Диапазон ячеек должен содержать не менее 2-х ячеек (иначе - ошибка). 2. Не смотря на то, что, свойство Value в VBA Excel используется по умолчанию, в данном случае его необходимо явно указывать явно (см. пример).
Чем шире угол зрения, тем он тупее.
|
23.11.2009, 13:18 | #6 |
Форумчанин
Регистрация: 29.10.2008
Сообщений: 294
|
Понял, спасибо!
Буду творить дальше |
23.11.2009, 14:11 | #7 |
Форумчанин
Регистрация: 29.10.2008
Сообщений: 294
|
SAS888, я вот тут сочинил следующее, пусть немного объёмно, но это для того, чтобы самому понять, как это будет работать:
Код:
В чем проблема? И как записать: Код:
т.е.: Код:
Последний раз редактировалось Maxx; 23.11.2009 в 14:15. |
23.11.2009, 14:28 | #8 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Необходимо определить динамический массив, а затем, когда станет известна требуемая размерность, определить ее, используя ReDim.
Для примера, посмотрите, как можно решить Вашу задачу из поста №7: Код:
Чем шире угол зрения, тем он тупее.
|
23.11.2009, 14:32 | #9 |
Старожил
Регистрация: 02.05.2009
Сообщений: 3,907
|
После цикла i равно не 300 а на единицу больше
Замените SummArray(i) на SummArray(i - 1) Set y = Range(Cells(arow, 8), Cells(brow, 8)) y.Value = SummArray(i - 1)
Анализ,обработка данных Недорого
|
23.11.2009, 14:39 | #10 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
1. Замена
Код:
Код:
2. Пример того, как задать размерность результирующего массива см. выше. 3. Могу еще предложить код без внутреннего цикла: Код:
Чем шире угол зрения, тем он тупее.
Последний раз редактировалось SAS888; 23.11.2009 в 14:44. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с массивами | mchip | Microsoft Office Excel | 8 | 22.04.2009 11:46 |
Работа с массивами | MasterofCDM | Общие вопросы Delphi | 4 | 27.11.2008 23:45 |
Работа с массивами в C# | MaskEdit | Общие вопросы .NET | 3 | 17.05.2008 17:59 |
Работа с массивами | rexec | Microsoft Office Excel | 12 | 21.04.2008 13:29 |
Работа с массивами | DeN1308 | Помощь студентам | 3 | 09.11.2007 11:50 |