|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
17.07.2017, 12:39 | #1 |
Пользователь
Регистрация: 26.04.2017
Сообщений: 86
|
VBA Access Медленно выполняется процедура импорта
Доброго времени суток
Не знаю насколько это имеет отношение к проблеме, однако в начале прошлой недели на работе сбоило электричество. С тех самых пор я стал замечать, что процедуры импорта, которые я пишу для форм, выполняются неприлично медленно. В данный момент имеется форма с опцией выбора нескольких файлов и кнопки для импорта таблиц excel разного типа. Сейчас гоняю импорт таблицы где строк под импорт смешное колличество - 10 (импорт занял 7 минут, при том, что импорт той же таблицы штатным методом происходит мгновенно). В чём может быть причина? Используемый код: - Импорт Код:
Код:
Код:
Формат файла акса - mdb, эксельник - xlsx Библиотеки: Visual Basic For Applications Microsoft Access 14.0 Object Library OLE Automation Microsoft Office 14.0 Access database engine Object Library Microsoft ActiveX Data Objects 2.8 Library Microsoft Visual Basic for Applications Extensibility 5.3 Microsoft Word 14.0 Object Library Microsoft Office 14.0 Object Library Microsoft Excel 14.0 Objects Library Microsft ActiveX Data Objects 2.8 Library Microsft ActiveX Data Objects Recordset 2.8 Library На других машинах пока не запускал. Проверю вечером на домашнем ноуте в случае если к тому времени вопрос не будет исчерпан |
17.07.2017, 12:53 | #2 |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
Размер mdb? Зжатие базы не помогает?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. |
17.07.2017, 13:29 | #3 | |
Пользователь
Регистрация: 26.04.2017
Сообщений: 86
|
Цитата:
Сжимал через Параметры - Сжимать при закрытии Пару раз попробовал импортнуть - 6 мин. |
|
17.07.2017, 13:42 | #4 |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
Еще вариант - пересоздать xlsx файла. Не сохранить как, а нового
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. |
17.07.2017, 14:58 | #5 |
Пользователь
Регистрация: 26.04.2017
Сообщений: 86
|
|
17.07.2017, 15:16 | #6 |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
Ручная трассировка где показывает задержку выполнения?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. |
17.07.2017, 15:55 | #7 |
Пользователь
Регистрация: 26.04.2017
Сообщений: 86
|
Протрассировал.
Когда заканчиваются непустые строки, выполнение начинает долго прыгать по строкам кода Код:
Код:
Код:
Заменить If на Do While? Последний раз редактировалось Ethex; 17.07.2017 в 16:00. |
17.07.2017, 16:09 | #8 |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
а такая замена?
Код:
Код:
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. |
17.07.2017, 17:43 | #9 |
Пользователь
Регистрация: 26.04.2017
Сообщений: 86
|
|
17.07.2017, 19:09 | #10 |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
"найти последнюю непустую ячейку столбца В, при условии что нету фильтров, и получить номер строки этой ячейки"
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
MySQL: Процедура выполняется не полностью | lawliet93 | SQL, базы данных | 0 | 13.01.2013 15:57 |
медленно выполняется макрос | vefer | Microsoft Office Excel | 4 | 22.01.2012 16:35 |
Не выполняется хранимая процедура | MrBlackJack | Microsoft Office Excel | 0 | 29.12.2011 10:51 |
Обновление таблицы Access путем импорта данных из DBF | TranzitZP | Microsoft Office Access | 9 | 11.04.2011 00:26 |
Все висит пока выполняется процедура | XPAiN | Общие вопросы Delphi | 3 | 07.05.2008 15:03 |