Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 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 - это "он" или "она"?

Ответить

  Ответы Всего ответов: 11  

Номер ответа: 1
Автор ответа:
 Smith



ICQ: adamis@list.ru 

Вопросов: 153
Ответов: 3632
 Профиль | | #1 Добавлено: 03.06.09 12:30
Это как тебе удобно :).
Для меня Эксель - он, Винда - она, Бейсик - он, Опера - она.
Вообще, эксель не виноват, что после экспериментов перестал работать, виноваты эмэсовцы.
Как вариант, выделить, скопировать и вставить таблицы в новую книгу Excеl 2003, тамже и написать код, поновой.
И на будущее, делать резервные копии.

Ответить

Номер ответа: 2
Автор ответа:
 Arvitaly



ICQ: 301746136 

Вопросов: 28
Ответов: 549
 Web-сайт: okazani.ru
 Профиль | | #2
Добавлено: 03.06.09 12:56
Я всё больше разочаровываюсь в Excel вместе с его VBA! Работал, работал и на тебе!


Да это известный косяк из 2003 в 2007 макросы не пашут

Ответить

Номер ответа: 3
Автор ответа:
 Jasmin



Вопросов: 23
Ответов: 417
 Профиль | | #3 Добавлено: 03.06.09 19:06
Беру старую версию книги (новая-то с кодом не открывается), программа по Run не работает, спотыкается на элементарных функциях (типа Str$) с сообщением "Compile error: Can't find project or libary", хотя до посещения "чужого" ПК всё работало прекрасно. Редактирую код, сохраняю книгу. Потом пытаюсь её открыть, но не тут-то было! Появляется сообщение об ошибке (см. выше) и всё повторяется.
У меня несколько раз такое было. Заходила в Tools->Referenses Там где-то в списке будет строчка начинающаяся на Missingю Нужно снять галочку с нее и снова (найдя в списке) поставить, если нужна эта библиотека.
Попробуй мне помогало.
А про "исчезание" форм. Может нужно зарегистрировать библиотеки от 2007 на твоем компе ? У меня так было на работе. На моей машине открывается, на соседней все убивает. Зарегистрировала, все нормально открылось.
Удачи.

Ответить

Номер ответа: 4
Автор ответа:
 машинист



Вопросов: 6
Ответов: 26
 Профиль | | #4 Добавлено: 03.06.09 21:14
нужно зарегистрировать библиотеки от 2007 на твоем компе ? У меня так было на работе. На моей машине открывается, на соседней все убивает. Зарегистрировала, все нормально открылось

Jasmin, подскажи, пожалуйста, процедуру регистрации библиотек на ПК.

Ответить

Номер ответа: 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...". Вот напротив нее галочку снимаешь, а потом если такая есть библиотека, находишь в списке ниже и снова ставишь. Это из-за разных сборок может быть. На мой взгляд.

Ответить

Номер ответа: 7
Автор ответа:
 машинист



Вопросов: 6
Ответов: 26
 Профиль | | #7 Добавлено: 16.06.09 11:26
Уважаемый Форум,
про прикол типа "VBA.Str$" слышу(вижу) впервые. Где про "VBA." можно посмотреть (написано) "официально"?

Ответить

Номер ответа: 8
Автор ответа:
 машинист



Вопросов: 6
Ответов: 26
 Профиль | | #8 Добавлено: 19.06.09 12:48
Jasmin, огромное спасибо за детальную информацию по регистрации библиотек. Манипуляции с галочками у "Missing" мне не помогли, но дело сдвинулось после приставок "VBA." к "упрямым" функциям (у меня - это в основном функции для работы со строковыми переменными). И еще, на своём служебном ПК я заменил Excel-2007 на Excel-2003, теперь конфликтов быть не должно, разве что
из-за разных сборок
. Проверить на совместимость удасться не скоро - из-за травмы колена сижу дома в гипсе :-(

Ответить

Номер ответа: 9
Автор ответа:
 Leon29



Вопросов: 2
Ответов: 3
 Профиль | | #9 Добавлено: 27.11.09 00:57
Ребята, спасайте! Вышла эта надпись: "Error in loading dll" в excel'e. Писал код на домашней машине (экран большой). И вот включил на буке. Было пару ошибок (я не объявил пару раз переменные). Потом код работал. Запустил еще один файл екселя. И вот приехал. НЕ могу попасть в модуль (там весь движок игры). Хорошо, что копия есть.

Смотрел параметры references. Все библиотеки одинаковы. Офис везде 2007. Единственное отличие windows xp и windows 7.

Ответить

Номер ответа: 10
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #10
Добавлено: 28.11.09 16:51
машинист
И ещё интересно, перестала появляться справка при наведении курсора на слово + F1

Известная проблема совместимости двух офисов на одном компьютере. Решается тем, что Office 2003 устанавливается не до, а после установки Office 2007. Если у тебя не это и офис на компьютере один, то пробуй простую полную переустановку. У меня сейчас 2 офиса на одном компе живут мирно)

Проверить на совместимость удасться не скоро - из-за травмы колена сижу дома в гипсе

Неужели ногу прострелил? :-)

Leon29: Создай новую тему, так будет лучше. Программные модули можно экспортировать в текстовые файлы на случай, если Книга Excel наворачивается.

Ответить

Номер ответа: 11
Автор ответа:
 Leon29



Вопросов: 2
Ответов: 3
 Профиль | | #11 Добавлено: 30.11.09 13:11
Нашёл решение случайно. При очередном запуске файла с флешки в references "ref edit control" загружено с флешки (копировал файлы с первом машины). Заменил их и всё теперь работает.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам