Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.65/40: Рейтинг темы: голосов - 40, средняя оценка - 4.65
1 / 1 / 0
Регистрация: 08.05.2011
Сообщений: 40

Application Activate Events? Событие - активация окна Excel

26.12.2006, 13:05. Показов 8287. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как сделать макрос на событие: активация окна Excel?

Workbook_Activate и Worksheet_Activate() работают только тогда, когда их активация происходит в переходом на книгу или лист соответственно из другой книги или листа, но ИЗ САМОГО ПРИЛОЖЕНИЯ Excel. А нужно как-то отследить момент активации самого приложения.
Application.Windows("Book1").OnWindow тоже не срабатывает.
Можно, наверное, как-то использовать идею проверки активности окна через определённый промежуток времени (макрос в OnTime) или WinAPI (в чём совершенно не разбираюсь). Но надо, чтоб событие активация Excel срабатывало только 1 раз.
Кто-нибудь делал такое? Подскажете хоть посредством WinAPI, но подробный код.
MS Office 97.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.12.2006, 13:05
Ответы с готовыми решениями:

Excel 2010: добавил на форму кнопку, перестало работать событие Form.Activate
Абсолютно на ровном месте заимел ошибку: перестала открываться форма по нажатию кнопки правильно, вернее она открывается, но код,...

Объект Excel.Application будет реагировать на следующее событие
Добрый вечер, спокойной ночи! Задание. Разработать пример, в котором объект Excel.Application будет реагировать на следующее событие -...

Событие Activate не срабатывает
Событие Activate не срабатывает если форма становится активной при переходе в нее из окна другой программы. Например, если слева окно...

2
snov
27.12.2006, 12:52
Если тебе нужно сделать макрос в какой-то конкретной книге, то и пропиши его там.

Activate срабатывает когда управление передается данной книге.

Если тебе необходимо отловить именно загрузку этого приложения то используй событие Open
1 / 1 / 0
Регистрация: 08.05.2011
Сообщений: 40
27.12.2006, 20:00  [ТС]
Я имел ввиду немного другое.
Поясню пошагово. Применительно к Workbook_Activate.
Запускаем Excel, книгу "Book1"
В модуле книги "Book1" выбираем, например, событие Workbook_Activate. Пишем в нём какой-нибудь код. Например,
Visual Basic
1
2
3
Private Sub Workbook_Activate()
MsgBox "Привет!"
End Sub
Создаём ещё одну книгу "Book2".
Теперь, если была активна книга "Book2", то при активации книги "Book1" выскакивает сообщение "Привет!". Это - понятно.
Далее, пусть активна книга "Book1". Запускаем MS Word. Окно Word становится активным, окно Excel, соответственно, неактивным. Теперь, если активировать снова окно Excel, то ожидаемого "Привет!" не выскакивает, т. к. в самом приложении Excel книга "Book1" и так как бы уже была активна.
Вопрос как раз и был в том, чтоб как-то отслеживать событие - <STRONG>АКТИВАЦИЯ САМОГО ОКНА EXCEL</STRONG>.
PS. Завершаю пояснение, ибо, судя по всему, вопрос или его пояснение, состоящее более чем из 3-х строк, многие люди внимательно не читают.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.12.2006, 20:00
Помогаю со студенческими работами здесь

Работа с Application Events
Добрый вечер. Не знаю как сделать программу. Смысл её такой,как обычно при нажатии на Alt+Tab появляется окно с переключением запущенных...

Создать объект Excel.Application: var Obj=Server.CreateObject('Excel.Application');
мне нужно создать объект var Obj=Server.CreateObject('Excel.Application'); у меня стоит iis 4.0 и nt и возникает ошибка - обший смысл...

Activate окна не всегда срабатывает
Здравствуйте все ツ Вопрос. Нужно после старта сделать окно активным и фокусным. Это на некоторых компьютерах работает, а на некоторых...

В какое событие (Events) записать код вычисления
В какое событие записать код вычисления чтобы при добавлении данных , вычисления шли во всех строках? Добавлено через 16 минут ...

Как избавиться от всплывающего окна "Microsoft Office Excel is waiting for another application to complete an OLE action"
Уважаемые форумчане у меня следующая проблема. Работая в Excel посредстов VBA я запускаю на выполнение макрос в Access. Он работает долго и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 30.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru