|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
31.07.2013, 10:04 | #1 |
Пользователь
Регистрация: 30.07.2013
Сообщений: 46
|
Оптимизация
Как можно оптимизировать код таким образом, чтобы макрос выполнялся быстрее. Кол-во строк очень большое (до 90 тыс строк). Вообще все операции выполняются в массивах. Может можно использовать что то другое? Я только начинаю программировать в vba
perseverance overcomes all things
|
31.07.2013, 10:16 | #2 | |
Старожил
Регистрация: 15.05.2008
Сообщений: 2,058
|
Цитата:
А так - все будет общие фразы и догадки.
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499 |
|
31.07.2013, 10:33 | #3 | |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Виктор, судя по этому
Цитата:
KaSS, Ваш код работает? если да - пусть себе работает ничего не оптимизируйте
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
|
31.07.2013, 10:57 | #4 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Так ведь написано:
"Вообще все операции выполняются в массивах." Ну можно ещё словари/коллекции подключить.
webmoney: E265281470651 Z422237915069 R418926282008
|
31.07.2013, 11:11 | #5 | |
Пользователь
Регистрация: 30.07.2013
Сообщений: 46
|
Цитата:
Да, работает. Но работает 15 мин. Если вдруг нашли ошибку в исходной таблице, исправили, то макрос нужно запускать заново что бы он снова обработал таблицу, присвоил статус ("в срок", "позже срока", "раньше срока" и т.п.) А потом сравнил с данными из другой таблицы и в результате построил третью таблицу в которой все сгруппировано например по участкам учета и посчитано общее кол-во обработанных, необработанных документов по каждому из статусов
perseverance overcomes all things
|
|
31.07.2013, 11:13 | #6 |
Пользователь
Регистрация: 30.07.2013
Сообщений: 46
|
Пробовала через словари, в них еще дольше, чем через массивы
perseverance overcomes all things
|
31.07.2013, 11:18 | #7 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Не верю. Докажите
webmoney: E265281470651 Z422237915069 R418926282008
|
31.07.2013, 11:23 | #8 |
Пользователь
Регистрация: 30.07.2013
Сообщений: 46
|
В данный момент у меня нет ни желания, ни времени снова писать программу сначала с использованием словаря а потом с использование массивов, но могу сказать что когда я это делала, одинаковые действия в таблице с 27 тыс строк через словарь выполнялись 2 мин, а через массивы 40 сек
perseverance overcomes all things
|
31.07.2013, 11:46 | #9 | |
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
Цитата:
Правильно поставленная задача - три четверти решения.
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Оптимизация | Кащей | Общие вопросы C/C++ | 6 | 30.07.2013 09:55 |
Оптимизация | bleeX | Паскаль, Turbo Pascal, PascalABC.NET | 3 | 12.04.2012 20:15 |
Оптимизация... | MikeMNN | Общие вопросы C/C++ | 0 | 15.12.2010 17:40 |
оптимизация | Terrance! | Помощь студентам | 8 | 24.09.2010 10:58 |
Оптимизация | Viper1287 | Операционные системы общие вопросы | 7 | 13.09.2009 15:33 |