Страницы: 1
RSS
Прекращение работы MS Excel
 
Приветствую вас, гуру Excel-я!
Возникла проблема, которую я даже осмыслить пока не могу. Может кто уже сталкивался с этим и подскажет в какую сторону копать?
Суть проблемы такова: довольно большой макрос при пошаговом выполнении отрабатывает как надо. Но стоит его запустить, то после выполнения (а я вижу, что он отрабатывает до конца) происходит сбой Excel-я. Появляется окно (во вложении).
Я думал, что сам файл запоролся. Перенес руками данные и сам код в новую книгу, но проблема повторилась. Подскажите, плз, в чем может быть дело?

Сигнатура проблемы:
Имя события проблемы: APPCRASH
Имя приложения: EXCEL.EXE
Версия приложения: 14.0.4756.1000
Отметка времени приложения: 4b9c08e8
Имя модуля с ошибкой: EXCEL.EXE
Версия модуля с ошибкой: 14.0.4756.1000
Отметка времени модуля с ошибкой: 4b9c08e8
Код исключения: c0000005
Смещение исключения: 00037b42
Версия ОС: 6.1.7601.2.1.0.256.1
Код языка: 1049

Дополнительные сведения об этой проблеме:
LCID: 1049
skulcid: 1049
Учимся сами и помогаем другим...
 
а погуглить?  ;)
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Гуглить не помогает (по крайней мере на сегодня :-( ) все найденные советы не помогли.
Учимся сами и помогаем другим...
 
Просто интересно, если тормознуть на end sub при исполнении-тоже сбой?
 
Ответ вроде как очевиден - проблема в самом коде. Может он создает какие-либо объекты со ссылками, которые приводят к ошибке, может еще какие-то вещи. Может из-за того, что просто какая-то связь или ссылка на объект в памяти не успели прописаться в документа, а Вы уже обращаетесь к её методам и свойствам. В таком случае может помочь DoEvents. А вообще трудно сказать что-либо конкретное, не зная, что Вы там сотворяете этим кодом.
Еще одна из возможных причин - установленные надстройки, которые конфликтуют с Вашим кодом.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
Ответ вроде как очевиден - проблема в самом коде
Дима, а я всегда думал, что если Excel вылетает, - то это проблема в самом Excel, а не в формулах или коде.

По идее, если бы в Excel не было ошибок, он бы выдавал какое-то сообщение, ну или что угодно делал, - но только не вылетал с ошибкой.

PS: Вот вчера, впервые за последние пару лет, столкнулся с подобным (Excel 2010 вылетает на строке Application.FileDialog(msoFileDialogSaveAs), если надо запросить путь для сохранения XML файла. В остальных Excel всё четко, а 2010-й молча закрывается. Нашел другой способ, без использования  msoFileDialogSaveAs. И дело явно не в коде, а в Excel)
 
Видимо проблема была в Офисе. На рабочем компе все работает нормально. Буду дома переустанавливать. Всем спасибо за отклик.
Учимся сами и помогаем другим...
 
Игорь, я не имел ввиду, что сам код ошибочен. Я имел ввиду, что код провоцирует ошибку. Понятно, что ошибка офиса - где-то что-то начинает глючить. Но глючить начинает именно в результате работы кода. Значит он что-то делает(или не доделывает), что провоцирует ошибку. Ведь пошагово отрабатывает без ошибок, верно?

Я помню подобную ошибку(была такая проблема у одного участника на моем форуме). Файл вылетал с ошибкой. Притом тоже не выдавал ошибок VBA. Проблема была в том, что шло неверное обращение к сводной. И Excel тупо закрывался с точно таким же окошком. Стоило удалить неверные строки - ошибка исчезла.
Так что по сути ковырять следует именно код. Если переустановить офис - где гарантия, что через неделю ошибка не возобновится? И, как правило, в самый неудобный момент.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
The_Prist пишет:
....Ведь пошагово отрабатывает без ошибок, верно?
...

Именно. пошагово все отрабатывало.

Цитата
The_Prist пишет:
Так что по сути ковырять следует именно код. Если переустановить офис - где гарантия, что через неделю ошибка не возобновится? И, как правило, в самый неудобный момент.

Этим сейчас и занят. сегодня еще раз протестирую рабочий файл на домашнем компе. Если ошибка, значит дело в офисе.
Учимся сами и помогаем другим...
Страницы: 1
Наверх