Страница: 1 |
|
Вопрос: Excel сам убирает форму VBA и макросы
|
Добавлено: 03.06.09 05:46
|
|
Автор вопроса: машинист
|
Уважаемый Форум,
На моём ПК установлен Excel 2003, в среде которого я создал конкретную книгу, форму VBA и макоросы, короче, коды. После того, как я поработал с этой книгой (включая редакцию кодов) на другом ПК с Excel 2007, на моём ПК эта книга загружается с сообщением об ошибке и предложением восстановить документ с последующей перезагрузкой Excel. После "восстановления" книги в ней уже нет ни формы VBA, ни макоросов (ничего, ради чего я, собственно, и создавал эту книгу) - голый Excel с моими страницами без кода.
И ещё интересно, перестала появляться справка при наведении курсора на слово + F1, а вмесо этого "Error in loading DLL (Error 48)". И ещё. Беру старую версию книги (новая-то с кодом не открывается), программа по Run не работает, спотыкается на элементарных функциях (типа Str$) с сообщением "Compile error: Can't find project or libary", хотя до посещения "чужого" ПК всё работало прекрасно. Редактирую код, сохраняю книгу. Потом пытаюсь её открыть, но не тут-то было! Появляется сообщение об ошибке (см. выше) и всё повторяется.
Что делать? Я всё больше разочаровываюсь в Excel вместе с его VBA! Работал, работал и на тебе!
Кстати, Excel - это "он" или "она"?
Ответить
|
Номер ответа: 1 Автор ответа: Smith
ICQ: adamis@list.ru
Вопросов: 153 Ответов: 3632
|
Профиль | | #1
|
Добавлено: 03.06.09 12:30
|
Это как тебе удобно .
Для меня Эксель - он, Винда - она, Бейсик - он, Опера - она.
Вообще, эксель не виноват, что после экспериментов перестал работать, виноваты эмэсовцы.
Как вариант, выделить, скопировать и вставить таблицы в новую книгу Excеl 2003, тамже и написать код, поновой.
И на будущее, делать резервные копии.
Ответить
|
Номер ответа: 5 Автор ответа: GDK
Вопросов: 13 Ответов: 348
|
Профиль | | #5
|
Добавлено: 04.06.09 12:01
|
программа по Run не работает, спотыкается на элементарных функциях (типа Str$) с сообщением "Compile error: Can't find project or libary"
Копировал файл несколько раз: флэха-комп-флэха-комп? Получите, распишитесь!
В Word тоже самое. Варианты: 1. Создать новый файл, скопировать содержимое и макросы в него.
2. Заменить все ф-ции типа Str$ на типа VBA.Str$.
Missingю
А можно подробнее?
процедуру регистрации библиотек на ПК.
Ага и отменить регистрацию.
Ответить
|
Номер ответа: 6 Автор ответа: Jasmin
Вопросов: 23 Ответов: 417
|
Профиль | | #6
|
Добавлено: 09.06.09 16:32
|
машинист: Извиняюсь, что долго не отвечала. Пробовала вот это. Вроде помогло. Но, повторюсь, я это делала, когда у меня библиотека была другая или сборка офиса. Не знаю как поведет себя при регистрации на 2003 библиотеки от 2007.
Для регистрации модулей OCX и OLE-серверов необходимо воспользоваться утилитами REGOCX16.EXE и REGOCX32.EXE. Первая из этих утилит предназначена для 16-разрядных элементов управления OLE, а вторая — для 32-разрядных. Объяснение процедуры регистрации приведем на примере элемента управления SYSINFO.OCX.
Сначала скопируем OCX-файл на жесткий диск (обычно это делается в каталог WINDOWS\SYSTEM). Затем воспользуемся утилитой REGOCX32.EXE для регистрации этого элемента управления:
Листинг 1.
REGOCX32.EXE SYSINFO.OCX
После того как утилита завершит свою работу, в диалоговом окне References (оно вызывается из меню Tools) появится новый элемент, который теперь можно пометить как доступный. Наконец, в меню Tools выберите позицию Custom Controls и установите флажок в строке «Microsoft SysInfo Control».
Для регистрации in-process OLE-сервера потребуется использовать файл REGSVR32.EXE. Данная утилита поддерживает следующие опции:
регистрация in-process DLL-библиотеки:
Листинг 2.
REGSVR32.EXE C:\MYDIR\MYINPROC.DLL
отмена регистрации in-process DLL-библиотеки:
Листинг 3.
REGSVR32.EXE /U C:\MYDIR\MYINPROC.DLL
Эти утилиты можно использовать для регистрации элементов управления OCX. При создании автономных OLE-серверов они будут скомпилированы в исполняемый файл. С другой стороны, можно зарегистрировать или отменить регистрацию автономных OLE-серверов из командной строки:
регистрация автономного сервера:
Листинг 4.
C:>MYOLESVR.EXE /REGSERVER
отмена регистрации автономного сервера:
Листинг 5.
C:>MYOLESVR.EXE /UNREGSERVER
GDK: А что копирование тоже помогает ? У меня не получалось. Только через регистрацию.
2 вариант согласна. Но привычка дело постоянное. Вот и пишу часто без VBA.
Missingю В ссылках Referenses при отсутствующей регистрации библиотеки, будет строчка типа "Missing: Microsoft...". Вот напротив нее галочку снимаешь, а потом если такая есть библиотека, находишь в списке ниже и снова ставишь. Это из-за разных сборок может быть. На мой взгляд.
Ответить
|
Страница: 1 |
Поиск по форуму