Активировать открытый файл MS Access для SendKeys с VBA - PullRequest
0 голосов
/ 12 февраля 2019

Я пытаюсь отправить нажатия клавиш в открытый файл Microsoft Acess, чтобы я мог экспортировать данные в файл Excel через панель инструментов.Как я могу активировать открытый файл доступа в коде VBA, чтобы это было окно фокуса?

1 Ответ

0 голосов
/ 12 февраля 2019

Вы можете активировать приложение открытого доступа, используя AppActivate и заголовок окна.

Однако заголовок окна зависит от того, что открыто в данный момент:

Если базы данных нетоткрыт:

AppActivate GetObject(, "Access.Application").Name 'Or AppActivate "Microsoft Access"

Если база данных открыта без специального заголовка:

AppActivate GetObject(, "Access.Application").CurrentDb.Name 'Or AppActivate "FileName.accdb"

Если база данных открыта с произвольным заголовком:

AppActivate GetObject(, "Access.Application").CurrentDb.Properties!AppTitle 'Or AppActivate "The title"

Обратите внимание, что автоматизация Access с использованием SendKeys делает его неправильно по моему мнению.В Access есть объектная модель, такая же, как в Excel, и вы можете легко связать их с помощью COM.Как правило, это намного надежнее, чем использование SendKeys,

...