Страницы: 1
RSS
Полное зависание Excel
 
Здравствуйте!

Вчера столкнулся с очень неприятной ситуацией.

Есть рабочий файл
В нем куча форм
Вчера этот файл перестал запускаться на двух компьютерах (тупи полностью зависает Excel, помогает только снятие задачи).
У меня вчера файл работал.
Я работаю с ноутбука. Неделю минимум не перегружал его. Сегодня утром работал в файле. Потом перегрузил ноутбук. Файл и у меня перестал работать.
На всех компьютерах установлен Офис 2016, 64 bit

Файл прекрасно продолжает работать на Офис 2010.

Для начала в 2010 Офисе удалил все модули и формы.
2016 - открылся
Экспортировал все модули.
Импортировал в 2016 - все замечательно.

А вот формы импортировать напрочь не хочет. Никакие. Опять зависает.

Есть подозрение, что это сама винда что-то обновила.
на одном компе Windows 7, на двух Windows 10, на всех офис 2016 - файл не работает
комп Windows Server 2008, Windows XP, на обоих Офис 2010 - файл работает.


Буду боагодарен за любые идеи.
Заранее спасибо.
 
А Вы попробуйте сделать это: http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=4&TID=78430&TITLE_SEO=78430-ne-poya...
 
Не помогло. А вот откат системы - очень даже помог. Но это не выход.
Все равно система потом обновится еще раз.
 
Похоже на проблему обновления ActiveX контролов.
Нужно удалять файлы с расширением EXD.
Приложил обновленный вариант BAT-файла, который нужно запустить на каждом компьютере с проблемами ActiveX.
В EXD файлах сохранены (скэшированы) объекты MSForms, которые загружались ранее, позже Microsoft менял ActiveX из-за  вопросов безопасности, современные версии стали несовместимыми с предыдущими.
Позже были еще отдельные темы по этой тематике.
Изменено: ZVI - 29.09.2016 17:27:28
 
не видя вашего файла, вряд ли можно угадать причину зависания...
 
Файлы были только в одной папке.
Удалил. К сожалению, не помогло.
 
Прикрепите сюда (в архиве) один из файлов формы типа UserForm1.FRM, который импортируется с зависанием.
Позже дома посмотрю на Excel 2016. Уточните, проблема на 32-х или 64-х битных версиях Excel2016?
 
Спасибо!

В принципе, я все уже восстановил. Но через "одно место".
Я создал кучу пустых форм, и просто копировал все объекты формы из старого файла в новый.
Благо дело - есть доступ к удаленному компьютеру. Т.е. через подключение через удаленный рабочий стол выделял все объекты на форме и вставлял уже на своем компьютере во вновь созданную форму.
Заняло час времени, но файл действительно, очень важный.

Офис 2016 - 64 битный  
Изменено: aleontjev - 29.09.2016 21:01:46
 
У Вас неправильно объявлена API-функция LoadKeyboardLayout() As Long для 64-битной версии.
Должна быть As LongPtr
Код
#If VBA7 Then 
  Private Declare PtrSafe Function LoadKeyboardLayout Lib "user32" Alias "LoadKeyboardLayoutA" (ByVal pwszKLID As String, ByVal flags As Long) As LongPtr
Изменено: ZVI - 29.09.2016 23:29:12
 
Спасибо!
Хотя, думаю проблема все таки не в этом.
Я ж уже перенес все формы по одной. И функции объявлены также.
И заработало.
Изменено: aleontjev - 30.09.2016 07:32:39
Страницы: 1
Читают тему
Наверх