Страницы: 1
RSS
Периодическая ошибка Run-time error -2147417848 (80010108) Automation error в файле с макросом
 
Здравствуйте Уважаемые эксперты!  
У меня возникла проблема с макросом Excel, никак не могу побороть.  
Есть файл с формой (анкета заявителя, в аттаче), При запуске периодически вылетает ошибка Run-time error -2147417848 (80010108) Automation error. Т.е. иногда форма все же запускается без проблем. А если запускать ее и прогонять через отладчик, то ошибки в таком случае никогда не возникает и все отрабатывает на ура. Не могу понять в чем дело, а главное зафиксировать проблему - т.к. после появления ошибки при нажатии Debug Excel переходит не в отладчик, а вылетает. Заранее спасибо за помощь.  
 
С Уважением,  
FaraViper  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
 
Вот еще прилагаю скрин с ошибкой  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
 
Скорее всего, проблема в избытке объектов на форме - Excel просто глючит, не успевая обрабатывать все события.  
Для ещё и 5417 строк кода дают о себе знать...  
 
При запуске формы у вас происходит множественные заполнения полей, которые вызывают другие события формы, и т.д.  
Excel просто не успевает всё сделать.  
 
 
Вариантов решения я вижу всего три:  
 
1) оптимизировать код (долго и сложно)  
2) купить комп помощнее (дорого, и не факт, что поможет)  
3) использовать в коде DoEvents (просто и эффективно)
 
Спасибо большое! Побробую применить DoEvents. А по оптимизации - хочется конечно и оптимизацию провести, но плохо представляю как это можно сделать (пока уровень владения языком не высокий). Там множество полей, и задать свойства сразу всем программно я не знаю как (это для общей блокировки скажем). А в целом - там отдельные проверки по каждому полю, с индивидуальными уведомлениями об ошибках - тоже не представляю как оптимизировать. Вот и получилось куча строк кода.
 
Сейчас пытаюсь вставить функцию DoEvents - как ее оптимальнее использовать? При вставке через определенные куски кода (после каждого блока данных по заявителю) - ошибка с automation error не исчезает.
 
DoEvents не помогает - продолжает выдавать ошибку. Я ее вставлял через определенные куски кода (после каждого блока данных по заявителю) - ошибка не хочет исчезать. Подскажите пожалуйста, может я неправильно ее использую? Я вставлял просто отдельной строкой DoEvents после соответствующего блока с данными.  
 
С Уважением,  
FaraViper  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
Страницы: 1
Читают тему
Наверх