У меня есть несколько листов Excel, в которых используются флажки ActiveX для контроля определенных действий. Они работали недавно, но сегодня начали выдавать ошибки. Меня предупредил об этом коллега, но он все еще работал на моем компьютере. Я сравнил его версию Excel со своей, и его версия была новее. Я заметил, что есть новые обновления Windows, поэтому сделал обновление. После того, как я применил ожидающие обновления, он больше не работает на моем компьютере. Я больше не могу проверять флажки ActiveX, и, как часть попытки отладки, похоже, я даже не могу добавить элемент управления ActiveX на любой рабочий лист, даже новый рабочий лист. Я получаю диалоговое окно с сообщением об ошибке: «Невозможно вставить объект». (Я все еще могу добавлять элементы управления формы, но не ActiveX.) Кто-нибудь еще сталкивался с этим после недавнего обновления? Какие-либо предложения?
Спасибо,
Майк
Ответы:
На других форумах я узнал, что это связано с обновлением MS и что хорошее решение - просто удалить файл MSForms.exd из любой подпапки Temp в профиле пользователя. Например:
C:\Users\[user.name]\AppData\Local\Temp\Excel8.0\MSForms.exd
C:\Users\[user.name]\AppData\Local\Temp\VBE\MSForms.exd
C:\Users\[user.name]\AppData\Local\Temp\Word8.0\MSForms.exd
Конечно, приложение (Excel, Word ...) должно быть закрыто, чтобы удалить этот файл.
источник
Вот лучший ответ, который я нашел в блоге группы поддержки Microsoft Excel.
Источник
источник
Это был KB2553154 . Microsoft необходимо выпустить исправление. Как разработчики приложений Excel, мы не можем заходить на все компьютеры наших клиентов и удалять с них файлы. Нас обвиняют в том, что вызвало Microsoft.
источник
Я разработчик Excel, и я определенно почувствовал боль, когда это произошло. К счастью, мне удалось найти обходной путь, переименовав файлы MSForms.exd в VBA даже во время работы Excel, что также может решить проблему. Разработчики Excel, которым необходимо распространять свои электронные таблицы, могут добавить следующий код VBA в свои электронные таблицы, чтобы сделать их невосприимчивыми к обновлению MS.
Разместите этот код в любом модуле.
RenameMSFormsFiles SUBROUTINE пытается переименовать файлы MSForms.exd в
C:\Users\[user.name]\AppData\Local\Temp\Excel8.0\
иC:\Users\[user.name]\AppData\Local\Temp\VBE\
папку MSForms - Copy.exd.Затем вызовите подпрограмму RenameMSFormsFiles в самом начале события Workbook_Open.
Электронная таблица попытается переименовать файлы MSForms.exd при открытии. Очевидно, это не идеальное решение:
По крайней мере, на данный момент разработчики Excel могут продолжать распространять свою работу с помощью этого обходного пути, пока Microsoft не выпустит исправление.
Я разместил это решение здесь .
источник
В Windows 8.1 я не мог найти файлы .exd с помощью поиска Windows. С другой стороны, команда cmd
dir *.exd /S
нашла один файл в моей системе.источник
Советы в КБ и выше у меня не работали. Я обнаружил, что если один из пользователей Excel 2007 (с обновлением безопасности или без него; не уверен в точных обстоятельствах, вызывающих это) сохраняет файл, возвращается исходная ошибка.
Я обнаружил, что самый быстрый способ снова восстановить файл - удалить весь код VBA. Сохранить. Затем замените код VBA (скопируйте / вставьте). Сохранить. Прежде чем пытаться это сделать, я сначала удаляю файлы .EXD, потому что в противном случае я получаю ошибку при открытии.
В моем случае я не могу обновить / обновить всех пользователей моего файла Excel в разных местах. Поскольку проблема возвращается после того, как некоторые пользователи сохранят файл Excel, мне придется заменить элемент управления ActiveX чем-то другим.
источник
Упрощенные инструкции для конечных пользователей. Не стесняйтесь копировать / вставлять следующее.
Вот как решить возникшую проблему:
Возможно, вам придется подождать, пока проблема не возникнет, чтобы это исправление сработало. Его преждевременное применение (до того, как Центр обновления Windows будет установлен в вашей системе) не поможет.
источник
Лучший источник информации и обновлений по этой проблеме, которые я смог найти, - это блоги TechNet »Блог группы поддержки Microsoft Excel (как уже упоминалось):
Элементы управления формами перестают работать после обновлений за декабрь 2014 г. (обновлено 10 марта 2015 г.)
В марте 2015 года было выпущено исправление в дополнение к автоматическим инструкциям по исправлению и ручным инструкциям, и оно также доступно в Центре обновления Windows.
Последнее обновление и исправление от Microsoft: 3025036 Ошибка «Не удается вставить объект» в настраиваемом решении ActiveX Office после установки обновления безопасности MS14-082
Общая информация о проблеме:
Руководство и дополнительные решения:
источник
Я наконец нашел этот ответ в официальной базе знаний Microsoft:
http://support.microsoft.com/kb/3025036/EN-US
Здесь нет новой информации, чем та, что у нас есть в предыдущих ответах, но, по крайней мере, подтверждается, что Microsoft знает об этой проблеме.
источник
Я знаю, что на этот счет уже было опубликовано много ответов, но ни один из них независимо не работал для моего сайта. Вот что у меня сработало:
Шаг 1. Удалите следующие обновления - KB2920789, KB2920790, KB2920792, KB2920793, KB2984942, KB2596927
Шаг 2. Скройте эти обновления, чтобы они не устанавливались при последующих перезагрузках.
Шаг 3: Удалите папку Excel8.0 из C: \ Users \ <> \ AppData \ Local \ Temp
Шаг 4: перезапустите рабочую станцию (я бы также убедился, что вышеупомянутые КБ не были применены случайно)
источник
Я хочу дать ответ, который сработал для меня как единственное (я понимаю, что, возможно, я единственный когда-либо). У меня был один макрос, который я вызывал с помощью ленты. У него был следующий код:
Я не знал, что это вызывает ошибку, поэтому я был сбит с толку и попробовал все здесь. Кнопка просто перестала работать, и я не мог заставить ее работать. Когда я заметил ошибку и исправил ее:
Он снова заработал. Совершенно странно, если вы спросите меня, но, может быть, это поможет кому-то, кто был в таком отчаянии, как я.
источник