powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Не отрабатывает событие в управляемой Excel
19 сообщений из 19, страница 1 из 1
Не отрабатывает событие в управляемой Excel
    #39799853
m.netda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужна помощь!!!
Ситуация следующая я через Access управляю несколькими книгами Excel в одной из книг есть макрос на события изменения в ячейке.
Если книгу открывать как обычно в экселе то все работает
А вот если книгу открывать программно из Access то данное событие не работает.
Подскажите, как заставить заработать события в управляемых книгах.
Как вызвать макрос по названию из любой книги писать не надо, это не есть цель.
Цель именно в том, чтобы события заработали самостоятельно, или как вариант, как сделать так чтобы из под Access получить возможность отслеживать события в книгах.
Спасибо!
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39799864
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m.netdaкак сделать так чтобы из под Access получить возможность отслеживать события в книгах.Можно же подписаться на события как обычно через WithEvents
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39799918
iMrTidy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m.netda,

При открытии через Access разрешено исполнение макроса?
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39799930
m.netda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[/quot]Можно же подписаться на события как обычно через WithEvents[/quot]

Я не разу не работал с WithEvents, как раз гуглю эту тему но пока не как не врубаюсь как это работает
в ACCess WithEvents почему то только в классах можно объявить.
Если у вас есть пример буду очень благодарен
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39799933
m.netda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
21859454 |> http://%5Bmsg=21859454]]

Если я его запускаю через application.run (Имя макроса), то все ок, но это блин такой костыль мне в итоге придется не одно событие так отслеживать а пару десятков, и каждый раз писать такой костыль совсем не хочется.
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39799940
iMrTidy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m.netda,

Application.Run запускает макрос от имени Access, как я полагаю, а исполнение макросов должно быть разрешено для запущенного Excel. Я бы открыл Excel в режими видиомсти и проверил с какими настройками он запущен.

А еще, смотря как изменяется ячейка. Если ее значение меняется в результате пересчета формулы, то такое изменение не будет считается изменением значения ячейки и событие "выстреливать" не будет.
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39799958
m.netda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
iMrTidy,

Чет немного в замешательстве. Запуск макросов разрешен в настройках центра безопасности. Вы об этом говорите? Или есть еще настройка которую надо принудительно включить.

Значение в ячейку прилетает из внешней ссылки на другой файл
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39799969
iMrTidy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m.netda,

Сейчас точно не смогу сказать, но, возможно, что Access, запускает Excel средствами InterOp, в таком случае настройки нужно проверять в DCOM. Если же Excel открывается от имени пользователя, то тут проблем не должно быть.

Если значение "прилетает" по формуле, то события ни в каком варианте срабатывать не будет.
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39800009
m.netda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
iMrTidy,

да вы правы при пересчете не выстреливает событие изменения, повесил на событие перед сохранением ну также в самой книге работает а при вызове через аксес нет(((
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39800013
iMrTidy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m.netda,

Протестируйте, будет ли выдаваться, например, MsgBox на событие перед сохранением, только чтобы Excel был видимым. И еще, формула не обновиться, если запрещено автообновление внешних ссылок.
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39800029
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
m.netda,
1. В Tools - References подключите библиотеку Microsoft Excel xx.x Object Library, если это еще не сделано.
2. В модуле класса напишите Dim WithEvents xlApp As Excel.Application .
3. В левом выпадающем списке над кодом выберите xlApp, в правом выпадающем списке будет список событий. Выбирайте и получайте заготовку обработчика.
Переменную xlApp надо связать с новым экземпляром приложения Excel с помощью New или CreateObject, или с уже запущенным приложением
Код: vbnet
1.
xlApp = GetObject(, "excel.application")

Где это сделать - в самом классе при инициализации или в основном коде, который создаст экземпляр класса - решать Вам.
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39800038
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
* Set xlApp = ...
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39800074
ldfanate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну а если дауншифтинг от обратного?
вместо workbooks.open выводить msgbox "Откройте пожалуста такуюто экселину и не закрывайте",
получать через getobject её объект, и дальше работать.

как в том известном анекдоте про вирус, который просил пользователя format c: проделать :)
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39800088
m.netda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
iMrTidy,
Теперь совсем интересно стало))
Событие отрабатывает MSgbox выскакивает, но интересная фигня получается
коллекцию листов получаю значения ячеек изменяется, а вот запись sh.rows(10).Hidden= False не отрабатывает
побывал в место скрытия строк прописать высоту тоже игнорит.

Ну а просто в книге все разумеется работает((
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39800095
m.netda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Казанскийm.netda,
1. В Tools - References подключите библиотеку Microsoft Excel xx.x Object Library, если это еще не сделано.
2. В модуле класса напишите Dim WithEvents xlApp As Excel.Application .
3. В левом выпадающем списке над кодом выберите xlApp, в правом выпадающем списке будет список событий. Выбирайте и получайте заготовку обработчика.
Переменную xlApp надо связать с новым экземпляром приложения Excel с помощью New или CreateObject, или с уже запущенным приложением
Код: vbnet
1.
xlApp = GetObject(, "excel.application")

Где это сделать - в самом классе при инициализации или в основном коде, который создаст экземпляр класса - решать Вам.

1 пункт сделан
2 Dim WithEvents xlApp As Excel.Application эту штуку я так понял нужно в классе указывать, это надо делать в процедуре инициализации класса? или в произвольной,
3 у меня объекты Excel.Application уже открыты как открывать их я умею а вот как забрать уже открытый?

Спасибо!
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39800112
m.netda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Казанскийm.netda,

3. В левом выпадающем списке над кодом выберите xlApp, в правом выпадающем списке будет список событий. Выбирайте и получайте заготовку обработчика.


[/src]Где это сделать - в самом классе при инициализации или в основном коде, который создаст экземпляр класса - решать Вам.

не появляется в access эта финча, почему не понимаю
если в эксель это написать в модуле эта книга то искомый список появляется
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39800128
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
m.netda,
Библиотеку подключите!!!
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39800131
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
m.netda,
сорри, не видел сообщения от 17:29
...
Рейтинг: 0 / 0
Не отрабатывает событие в управляемой Excel
    #39800280
m.netda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Казанский,

Не зря говоря утро вечера мудренее, всего то access нужно было перезапустить и все появилось))

Ребят спасибо за помощь, буду дальше шаманить ))
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Не отрабатывает событие в управляемой Excel
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]