![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 10.11.2009
Сообщений: 50
|
![]()
Добрый день, попытался реализовать аналог ВПР, но с автоматическим открытием файла. Почему это так медленно работает? Простой ВПР который вручную займет 10-30 секунд, в VBA работает аж 120-130 секунд. Как это можно ускорить? Спасибо.
Код:
|
![]() |
![]() |
![]() |
#2 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]()
Ускорить можно, только полностью переписав код
(вы выбрали самый медленный способ из всех возможных) были бы примеры файлов, - глядишь, кто-нибудь и подкинул бы готовый код. Думаю, время обработки реально сократить до 2-3 секунд Кстати, можете попробовать мою надстройку, - аналог ВПР: http://excelvba.ru/programmes/Lookup Интересно узнать, за какое время она справится с задачей |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 10.11.2009
Сообщений: 50
|
![]()
ВПР надо делать к File2 из File1, необходимые значения находятся в File1 колонка CB или номер 80. Буду признателен если подскажите как сделать быстрее.
|
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 05.07.2011
Сообщений: 208
|
![]()
Подгонять под ваши файлы желания нет
Код:
|
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 10.11.2009
Сообщений: 50
|
![]() Цитата:
Код:
|
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,170
|
![]()
Ну так конечно - у себя может всего десяток ячеек формулой забили, а тут аж целиком столбец!
Вы сперва определите диапазон, затем конкретно его и заполните.
webmoney: E265281470651 Z422237915069 R418926282008
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 05.07.2011
Сообщений: 208
|
![]()
Провел эксперимент
Код:
t2: 0,5938 t3: 12,4531 Но почему, когда без явного открытия книги тянет, время чуть не втрое больше? Последний раз редактировалось RAN.; 19.05.2014 в 10:10. |
![]() |
![]() |
![]() |
#8 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
![]()
чтобы посмотреть данные - файл все равно открыть надо, и если это не далает явно программист, то делают какие-то внутренние процессы ексель, и уже какая разница какие...
когда эмпирическим путем установлено, как быстрее.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
![]() |
![]() |
![]() |
#9 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,170
|
![]()
Я не понял - а откуда ВПР() в первом варианте берёт данные? Если такая книга не открыта - следует запрос файла, может поэтому время больше - Вы медленно мышом шевелили? ?)
webmoney: E265281470651 Z422237915069 R418926282008
|
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 05.07.2011
Сообщений: 208
|
![]()
Если книгу с макросом и книгу с данными бросить в одну папку, то первый вариант вполне успешно работает. И никакого запроса нет.
Из разных папок, правда, не хочет. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
с vlookup-ом не получается | user7789 | Microsoft Office Excel | 3 | 06.06.2013 13:55 |
VLOOKUP - второй, третий результат? | jungo | Microsoft Office Excel | 2 | 23.11.2009 13:42 |
Опять vlookup | Belokuraya | Microsoft Office Excel | 11 | 30.07.2009 20:16 |
Поиск в тексте и VLookup | jungo | Microsoft Office Excel | 4 | 27.04.2009 09:53 |
Не работает фотрмула VLOOKUP | mirawoo | Microsoft Office Excel | 3 | 06.08.2008 12:22 |