Приветствую, Вопрос в следующем Открыт Excel . Внутри приложения есть три окна , как на vba отловить событие когда нажимается кнопочка с крестиком в каком либо окне , что бы предотвратить его закрытие. Если открыто одно окно то проблем нет , происходит событие Workbook_BeforeClose(Cancel As Boolean) , далее Cancel=True и все отменяется, а вот если окон больше 1 то они просто закрываются , а нужно программно это запретить
Приветствую, Вопрос в следующем Открыт Excel . Внутри приложения есть три окна , как на vba отловить событие когда нажимается кнопочка с крестиком в каком либо окне , что бы предотвратить его закрытие. Если открыто одно окно то проблем нет , происходит событие Workbook_BeforeClose(Cancel As Boolean) , далее Cancel=True и все отменяется, а вот если окон больше 1 то они просто закрываются , а нужно программно это запретитьmrovr55
and_evg, Спасибо за ссылку, это у меня все в коде есть и я могу из своей книги отследить события в другой книге. Проблема в том что объект Windows ни в рабочей книге ни в событиях относящихся к Application не имеет события BeforeClose Книга имеет , а объект Windows не имеет. объект Windows имеет событие activate , Deactivate и Resaize . А вот события BeforeClose не имеет. И событие Resaize не происходит когда вы закрываете окно. Происходит Deactivate но толку от него нет , отменить закрытие нельзя (ну или я не знаю как). Печалька.
and_evg, Спасибо за ссылку, это у меня все в коде есть и я могу из своей книги отследить события в другой книге. Проблема в том что объект Windows ни в рабочей книге ни в событиях относящихся к Application не имеет события BeforeClose Книга имеет , а объект Windows не имеет. объект Windows имеет событие activate , Deactivate и Resaize . А вот события BeforeClose не имеет. И событие Resaize не происходит когда вы закрываете окно. Происходит Deactivate но толку от него нет , отменить закрытие нельзя (ну или я не знаю как). Печалька. mrovr55