|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.07.2011, 07:06 | #1 |
Регистрация: 25.07.2011
Сообщений: 3
|
VBA "массив в массиве"
доброго всем времени !
С VBA я не долго просьба сильно не ругаться коли что не так Вот какой вопрос. Есть потребность хранить имена массивов в массиве, а потом к ним обращаться в коде... dim NameMas(0 To 2) As String NameMas(0) = "mas1" NameMas(1) = "mas2" NameMas(2) = "mas3" и пытаюсь : Erase NameMas(0) ( тоесть хочу очистить mas1) он ругаеться.... Подскажите есть ли возможность реализовать ?? Вопрос собственно можноли хранить имена массивов в массиве, а потом к ним обращаться в коде...через массив... Спасибо !! |
25.07.2011, 09:37 | #2 |
Форумчанин
Регистрация: 24.01.2011
Сообщений: 136
|
NameMas(0)=""
|
25.07.2011, 09:40 | #3 |
Форумчанин
Регистрация: 22.06.2011
Сообщений: 325
|
И что это такое.... Вы просто присвоили пустое значение строковой переменной.
В массиве ведь были не массивы а строки!
Заказать макрос можно на сайте http://excel4you.ru/
|
25.07.2011, 10:37 | #4 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
VBA не поддерживает обращение к массивам по имени.
Зная имя переменной, ссылающейся на массив, вы не сможете получить доступ к массиву. Если так уж надо то, чего вы пытаетесь добиться (хотя я очень сомневаюсь в необходимости этого - ибо несколько лет пишу макросы, а с такой необходимостью не сталкивался) - то храните в массиве NameMas не имена массивов, а сами массивы. |
25.07.2011, 11:05 | #5 |
Регистрация: 25.07.2011
Сообщений: 3
|
EducatedFool спасибо за четкий ответ.
нельзя получить ссылку про описание храненеия массива в массиве... смысле как с этоим работать... и еще может подскажите.. задача примерно в следуещем собрать с 10 листов информацию с кучей разных условий и в зависимости от условий собирать разные ячейки перенести в 1 таблицу я пытался написать одну процедуру и в одном цикле делать проверку каждого листа по очереди и складывая данные в разные массивы... стопарнулся на том что надо менять имя массива в цикле и немогу додумать как... может подкинете идейку.. можна конечно просто продублировать операцию для каждого листа... но както не универсально чтоле... да и код громоздкий будет ... Пытаюсь чегото писать можна сказать 2 раз ...такчто сильно не ругайте если пытаюсь изобрести велосипед.... |
25.07.2011, 11:34 | #6 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Массив в массиве тоже не делал, а вот массив в словаре - приходилось.
Вот: Код:
webmoney: E265281470651 Z422237915069 R418926282008
|
25.07.2011, 11:45 | #7 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
вы же листы по очереди перебираете... Используйте один и тот же массив - к примеру, с именем arr И, к примеру, когда в цикле вы будете обрабатывать 5-й лист (а в массиве будут данные с 4-го листа), просто заносите новые данные в этот же массив (можете предварительно его очистить - Erase arr, хотя это не обязательно, ибо при чтении диапазона методом типа arr = [a1:b10].value исходный массив затирается) Ведь в момент обработки 5 листа данные с 4 листа уже будут не нужны. |
|
25.07.2011, 11:55 | #8 | |
Регистрация: 25.07.2011
Сообщений: 3
|
Цитата:
точно ведь !!! я просто хотел сначала все собрать потом выложить разом ! а ведь можно сразу выкладывать полученное !! и пользоваться по новой..... короче понял !!! можна наверно еще было увеличить размеры массива и все спихать в 1 как вариант... но ваш спосуб помойму проще !!! З.Ы. откуда с Урала кстати ??? |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как обойти "преобразование типа из "string" в "float" невозможно" | lexluter1988 | Помощь студентам | 1 | 07.08.2010 12:23 |
"ОКРВВЕРХ", "ОКР", "ЕСЛИ". Как бы их связать. | Каравай | Microsoft Office Excel | 13 | 17.02.2010 09:53 |
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" | aleksei78 | Microsoft Office Excel | 13 | 25.08.2009 12:04 |
Помогите ПЛИЗ доделать задачу "поиск мах эл. в одномерном массиве" | JNN | Общие вопросы C/C++ | 3 | 04.06.2009 09:23 |