|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
Добрый день! На событии Before_Close я делаю следующее: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
То есть алгоритм закрытия книги такой: 1. Before_Close 2. выполнение макросов приложения 3. Before_Save. Теперь собственно вопрос, как мне потом включить Application.EnableEvents = True после Before_Close? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2008, 12:24 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
xymbo, а в конце befor_close не катит? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2008, 13:57 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
_slan_xymbo, а в конце befor_close не катит? А если так поставлю, то будут выполняться макросы приложения.:( Не прокатит так. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2008, 15:52 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
xymbo, не совсем понял befor_close отрабатывает,.. cancel=true? т.е. книга не закрывается? так какие дальше идут события? мож их обработку и посмотреть? а так - или выключаешь или нет.. если выключил, то включить только вручную по-моему, хотя были слухи, что формулы условного форматирования срабатывают и при выключенных событиях и если определить функцию, кот включит события.. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2008, 19:08 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
_slan_, Приложение такое(очень интегрированное с экселем), что после Before_close, обрабатывает свои макросы, я описывал алгоритм в первом посте. Ща получилось по таймеру потом включать, но опять же, столько обходных путей, да и не совсем до конца все это работает. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.12.2008, 23:49 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
xymbo, все это общие фразы - после обрабатываются макросы... каким образом они запускаются? какая-то надстройка? закрытая? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2008, 09:01 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
_slan_xymbo, все это общие фразы - после обрабатываются макросы... каким образом они запускаются? какая-то надстройка? закрытая? Да, стороннее приложение, код соответственно закрыт, имеет цифровую подпись. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.12.2008, 10:10 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
Здесь Убрать кнопку Х, close из Excel еще кому-то мешает кнопка Close по той же причине :) Задача: есть некая чужая надстройка, перехватывающая событие WorkbookBeforeClose для любой книги, которую пытаются закрыть. Задача – заблокировать это перехват. Если цель такой задачи аморальная, то все что ниже - не читать ( съесть :) Особенности: о попытке закрытия книги Excel сообщает соответствующим событием сначала той книге, которая закрывается, и лишь затем – надстройкам (объектам класса с обработкой событий). Метод: перехватить событие в книге, которую пытаются закрыть, отключить генерацию событий на время раздачи его надстройкам и сразу же включить. Решение: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.12.2008, 18:00 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
Поправка: чтобы исключить зацикливание, код Sub EventsOn() должен быть размещен в другой открытой книге, например, в книге личных макросов Personal.xls Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.12.2008, 19:50 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
ZVI, а если выгрузить надстройку? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2008, 12:14 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
_slan_ZVI, а если выгрузить надстройку? 1) Если XLA-надстройка, то Вы правы, _Slan_, действительно, можно отключить события и выгрузить надстройку. Если только с ней не требуется продолжать работу, но уже с другой книгой - думаю, что автору виднее. 2) Если XLL-надстройка, то так не получится - только через отключение надстройки, которое она может отловить по соответствующему событию. 3) Если COM-надстройка, то то же, что и в п.2 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2008, 14:31 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
ZVIПоправка: чтобы исключить зацикливание, код Sub EventsOn() должен быть размещен в другой открытой книге, например, в книге личных макросов Personal.xls Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
Да, спасибо.Что собственно и сделал Таймер ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2008, 21:54 |
|
Отключение и включение макросов
|
|||
---|---|---|---|
#18+
Добрый день! Вот такой вопрос. При открытии книги запускается периодическое резервное копирование (OnTime). Соответственно, после закрытия оно уже не требуется, но продолжает выполняться пока открыт Excel. Попробовал вставить в Public Sub Workbook_BeforeClose(Cancel As Boolean) ... Application.OnTime Now, "Backup_This_Workbook", False ThisWorkbook.Save End Sub не получается так ... |
|||
:
Нравится:
Не нравится:
|
|||
30.04.2020, 13:28 |
|
|
start [/forum/topic.php?fid=61&fpage=6&tid=2171888]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 285ms |
total: | 414ms |
0 / 0 |