|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
14.07.2010, 15:49 | #1 |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
Надстройки Excel
Excel 2007. Подключил файл надстроек .xlam, который вносит свои пункты в контекстное меню.
При обычном открывании файла (по двойному клику, например) меню содержит пункты, внесённые надстройкой. На работе приходится пользоваться программой АРОС, которая запускает Excel и формирует файл .xls (да! да! именно в этой последовательности), содержащий некоторый объём макросов. После формирования файла, он доступен для любых действий, НО моя надстройка не отрабатывает, её даже нет в Project Explorer редактора VBA, хотя галочка в "Управлении Надстройками" стоит. Что можно сделать, чтобы надстройка отрабатывала не зависимо от метода запуска Excel'я?
Нет нерешаемых задач - есть недостаток времени и данных!
|
14.07.2010, 17:40 | #2 |
Форумчанин
Регистрация: 14.05.2009
Сообщений: 311
|
при обычном запуске Excel надстройка загружается?
проверь св-во AddIn у надстройки, оно д.б. True если на первый вопрос - да, и св-во норм, то дело в той неведомой проге (а у нее потроха можно посмотреть или черный ящик) еще попробуй через Personal на все это воздействовать, напр. Код:
|
15.07.2010, 15:25 | #3 |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
To аналитика
Чтобы использовать твой код, надо, как минимум, чтобы он откуда-нибудь запускался при старте Excel'я. Поскольку моя надстройка предназначена для преобразования файлов, полученных из АРОСа, то сейчас я делал следующим образом: сначала запускал Excel, а потом давал команду АРОСу на формирование файла. Т.о. сначала запускается Excel, отрабатывает моя надстройка, внедряя свои пункты в меню, и дальше можно работать нормально, преобразуя файлы, полученные из АРОСа. Вопрос решил следующим образом: Макрос надстройки был взят целиком из файла, который я раньше использовал для преобразования смет из АРОСа. Этот файл при своём запуске внедрял в контекстное меню ячейки свои пункты, а при закрытии пункты из меню удалялись. Установив этот макрос в виде надстройки, я не изменил работу с меню. Теперь, столкнувшись с работой АРОСа, я убрал удаление пунктов из меню, и эти пункты торчат в меню постоянно, независимо от способа запуска Excel'я. Т.о. загвоздка возникла из-за того, что при запуске АРОСа не отрабатывала процедура Workbook_Open() моих надстроек. Теперь, избавившись от необходимости её работы, я получил полноценную надстройку. Всем спасибо за внимание
Нет нерешаемых задач - есть недостаток времени и данных!
|
15.07.2010, 15:45 | #4 |
Форумчанин
Регистрация: 14.05.2009
Сообщений: 311
|
|
15.07.2010, 16:21 | #5 | |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
Цитата:
Однако! если на мою надстройку ссылается какой либо объект (пункт меню, кнопка на панели), то при нажатии на этот объект обращение к моим макросам происходит, и макросы отрабатывают. Моя загвоздка возникла всвязи с тем, что я при каждом запуске Excel заново устанавливал эти объекты, а при закрытии удалял. АРОС - это программа для создания смет, это по сути база данных, и работает так же. Как я понимаю, что при создании файла она обращается в Excel посредством макросов и формирует файл.
Нет нерешаемых задач - есть недостаток времени и данных!
|
|
15.07.2010, 16:30 | #6 | ||
Форумчанин
Регистрация: 14.05.2009
Сообщений: 311
|
Цитата:
Цитата:
Я до сих пор не пойму - Excel уже открыт, когда прога начинает работать или нет; прога запускает новый сеанс Excel или отрабатывает в текущем? я понял, что ты решил проблему, заменив контекстнозависимое изменение панели (в твоем случае это контекстные меню) на постоянное |
||
15.07.2010, 16:47 | #7 | |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
Цитата:
даю команду "Напечатать в формате Excel" Excel запускается и исчезает с рабочего стола (Hidden=True или что-то наподобие) - возможно, что АРОС при этом открывает какую-то свою заготовку АРОС передаёт данные в Excel Excel становится видимым Workbook_Open'ы не отработали! Если Excel был запущен до команды "Напечатать в формате Excel", то проблем не возникает
Нет нерешаемых задач - есть недостаток времени и данных!
|
|
15.07.2010, 17:00 | #8 | |
Форумчанин
Регистрация: 14.05.2009
Сообщений: 311
|
Цитата:
Application.EnableEvents =False да, прикольно посмотреть на это... прога тяжелая? можешь ее показать? конечно если это возможно (можа она млрд.$ стоит) |
|
15.07.2010, 17:10 | #9 |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
млрд не стоит, но ключ в LPT: требует
Нет нерешаемых задач - есть недостаток времени и данных!
|
15.07.2010, 17:17 | #10 |
Форумчанин
Регистрация: 14.05.2009
Сообщений: 311
|
ну и хорошо, время целее будет.
бывай здоров |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Гавённость надстройки поиск решения | eugrita | Microsoft Office Excel | 3 | 01.04.2010 14:12 |
Загрузка надстройки exel командой vba | alvazor | Microsoft Office Excel | 1 | 18.12.2009 12:08 |
автоматизировать установку надстройки | alvazor | Microsoft Office Excel | 4 | 01.10.2009 12:56 |
Проблема с программным запуском надстройки Solver | kovalevskivf | Microsoft Office Excel | 5 | 22.05.2009 19:53 |
Как запретить запуск программы на VBA Excel 2003 в Excel 2007 | kovalevskivf | Microsoft Office Excel | 2 | 15.05.2009 16:47 |