Для этой книги недоступны проект VBA... - проблема решена!
Сегодня решил установить себе для пробы Офис 2010. Хотя офисом Майкрософта последний год не пользуюсь (вполне устраивает LibreOffice), но для пробы и оценки так сказать решил поставить. Установил только самые нужные программы и компоненты: Access, Excel, Word и PowerPoint. И в первую очередь решил проверить работоспособность старых файлов, которые часто использовал в работе с использованием ранних версий Экселя, и основной функционал в них написан на VBA.
В общем Мазай, открываю файл и Эксель выдает мне:
Что делать? Приходиться лезть в Инет и искать решение вопроса. Детище Империи Гггг... выдает мне больше 100 страниц с такой же проблемой и вопросами как её решить (на русском языке конечно). Нахожу на одном форуме решение - переустановить компоненты Visual Basic из пакета Офиса 2010. Пробую не помогает... Да, интересно еще то, что когда Офис показывает ошибку (Для этой книги недоступны проект VBA, элементы управления ActiveX и остальные программные средства), то в окне ошибки внизу написано: перейдите на сайт office.com и задайте поиск "конвертеры VBA". Аналогично - пробовал - эффект нулевой. Все настройки безопасности - на нуле т.е. разрешено все без ограничений.
Причина то в том оказалась, что интерфейс Офиса перевели дословно, а решение проблемы на русской версии office.com нет. Додумался полезть искать решение в англоязычной версии.
В итоге нашел, итак:
1. Ссылка:
http://support.microsoft.com/kb/926430 - Читаем :)
2. Скачиваем файл по ссылке вверху:
Hotfix Download Available View and request hotfix downloads
Не смущайтесь, что там будет написано для Microsoft Office Excel 2007 English x86. Решение работает для разных версий и платформ. У меня Офис 2010 Русский х86.
3. Распаковываем скачанный файл (там будет двухуровневый zip архив).
4. Открываем инструкцию в распакованной папке Readme.
5. Читаем что там написано (показываю на моем примере, вам надо будет найти свою версию и платформу):
Для Excel 2010 или более поздней версии
На 32-битной ОС:
2. Скопировать файлы:
a. vbacv10.dll, vbacv10d.dll: в папку \Program Files\Common Files\Microsoft Shared\vba\vba7\
b. xl5en32.olb, gren50.olb: в папку где содержится исполняемый файл Excel.exe, по умолчанию: \Program Files\Microsoft Office\Office14\
c. vbaen32.olb, vbaend32.olb: в системную папку Windows: \Windows\System32\
далее для обеих платформ 32- и 64-бит:
3. Запустить файл vbaconv.bat от администратора.
(Конец установки)
И вот теперь - Аллилуйя! :) Все работает. Далее как рекомендует Мелкософт надо сделать действия по миграции старого кода в новый - см. на странице того же исправления:
RESOLUTION
Step 2: Migrate Excel 5.0/95 code
Удачи! И пусть эта проблема больше не появляется...
В общем Мазай, открываю файл и Эксель выдает мне:
Для этой книги недоступны проект VBA, элементы управления ActiveX и остальные программные средстваОфигеть, слава и хвала Мастдаю, который не может обеспечить совместимость в одной линейке своих же продуктов. Идиотизм...
Что делать? Приходиться лезть в Инет и искать решение вопроса. Детище Империи Гггг... выдает мне больше 100 страниц с такой же проблемой и вопросами как её решить (на русском языке конечно). Нахожу на одном форуме решение - переустановить компоненты Visual Basic из пакета Офиса 2010. Пробую не помогает... Да, интересно еще то, что когда Офис показывает ошибку (Для этой книги недоступны проект VBA, элементы управления ActiveX и остальные программные средства), то в окне ошибки внизу написано: перейдите на сайт office.com и задайте поиск "конвертеры VBA". Аналогично - пробовал - эффект нулевой. Все настройки безопасности - на нуле т.е. разрешено все без ограничений.
Причина то в том оказалась, что интерфейс Офиса перевели дословно, а решение проблемы на русской версии office.com нет. Додумался полезть искать решение в англоязычной версии.
В итоге нашел, итак:
1. Ссылка:
http://support.microsoft.com/kb/926430 - Читаем :)
2. Скачиваем файл по ссылке вверху:
Hotfix Download Available View and request hotfix downloads
Не смущайтесь, что там будет написано для Microsoft Office Excel 2007 English x86. Решение работает для разных версий и платформ. У меня Офис 2010 Русский х86.
3. Распаковываем скачанный файл (там будет двухуровневый zip архив).
4. Открываем инструкцию в распакованной папке Readme.
5. Читаем что там написано (показываю на моем примере, вам надо будет найти свою версию и платформу):
Для Excel 2010 или более поздней версии
На 32-битной ОС:
2. Скопировать файлы:
a. vbacv10.dll, vbacv10d.dll: в папку \Program Files\Common Files\Microsoft Shared\vba\vba7\
b. xl5en32.olb, gren50.olb: в папку где содержится исполняемый файл Excel.exe, по умолчанию: \Program Files\Microsoft Office\Office14\
c. vbaen32.olb, vbaend32.olb: в системную папку Windows: \Windows\System32\
далее для обеих платформ 32- и 64-бит:
3. Запустить файл vbaconv.bat от администратора.
(Конец установки)
И вот теперь - Аллилуйя! :) Все работает. Далее как рекомендует Мелкософт надо сделать действия по миграции старого кода в новый - см. на странице того же исправления:
RESOLUTION
Step 2: Migrate Excel 5.0/95 code
Удачи! И пусть эта проблема больше не появляется...
Комментарии
После ваших манипуляций один и тот же проект vba работает на 2003 и 2010, а вот 2007 ни в какую не хочет видеть ни макросы ни сам vba.
Как можно решить эту проблему?
==================================================
For Excel 2007
--------------
On a 32-bit operating system:
2. Copy the following files into the following folder on your system drive:
vbacv10.dll, vbacv10d.dll: \Program Files\Common Files\Microsoft Shared\vba\vba6\
-OR-
On a 64-bit operating system with 32-bit Excel (WoW):
2. Copy the following files into the following folder on your system drive:
vbacv10.dll, vbacv10d.dll: \Program Files (x86)\Common Files\Microsoft Shared\vba\vba6\
==================================================
Просмотрите еще раз внимательно инструкцию.
Очень удачный совет.
она еще не действующая?
Просто вы пытаетесь выполнить инструкции для Офиса 2010, в то время как у вас стоит Офис 2007.
Еще раз уточните вашу версию Офиса и скопируйте нужные файлы в папку vba6 если у вас 2007 версия Офиса. Инструкция для него на 4 комментария выше.
Удачи, если что - пишите...
Может, я что-то не правильно делаю, обьясните, плиз, для чайников,как правильно скопировать, пошагово.До этого все получалось)
очень помогло...как раз поставил надстройку password.xla
а она не хочет ставиться, выдаёт такие дже ругательства...вощем чел, выручил спасибо!!!
а то уже хотел покупать "рекавер" за 2 рубаса...блин, надо то было пару раз снять защиту, и так вовремя этов сё подвернулось!!!
http://clck.ru/8oHLF
Благодарю за отклик.
У вас действительно нет папки: X:\Program Files\Common Files\microsoft shared\VBA\VBA7 ? Может есть VBA8 и туда попробовать положить или сделать вручную эту папку VBA7 и туда закинуть? Попробуйте, может сработает...
X:\Program Files\Common Files\microsoft shared\VBA\VBA7 ,
я ищу их на диске "С", у меня вроде бы нет диска "Х". Может я не там эти папки ищу?
Может попробуйте еще в папку VBA7.1 или может VBA7.2 закинуть или похожую.