Вывести т.е. вперед и активировать его (т.е. щелкнуть вручную) с помощью vba - PullRequest
0 голосов
/ 16 мая 2019

Я написал скрипт, который откроет рабочую книгу и запустит макрос в рабочей книге.Макрос должен открыть Internet Explorer и войти на сайт с помощью команды SendKeys.У меня проблема в том, что Internet Explorer открывается в фоновом режиме, а Excel работает спереди.По сути, я хотел бы, чтобы недавно открытый Internet Explorer находился спереди и был выбран так, чтобы я мог использовать команду SendKeys.Я знаю, что макрос работает, когда я запускаю его вручную, и по некоторым причинам он также редко работает (после перезагрузки компьютера).Я не уверен, что это проблема синхронизации.

Причина, по которой я должен использовать SendKeys, заключается в том, что кнопка входа в систему будет работать только в том случае, если вы вручную введете идентификатор и пароль.Я также попытался отключить кнопку с помощью этого, но это не сработало, поэтому мне пришлось использовать SendKeys.

With .querySelector("#subBtn")
                .disabled = False
                .Click

Несколько человек уже задавали этот вопрос, но, похоже, нет однозначного ответа,Вот коды, которые я попробовал.

Dim ie As New InternetExplorer
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
CreateObject("WScript.Shell").AppActivate "Internet Explorer"
ie.Navigate "Website here"

Я также попытался показать т.е. после загрузки веб-сайта, и он не работал.

Set ie = CreateObject("InternetExplorer.Application")
ie.Navigate "website here"
While ie.Busy Or ie.ReadyState <> READYSTATE_COMPLETE
    DoEvents
Wend
ie.visible = True 
DoEvents

Я также сначала попытался свернуть Excel изатем установите i.e. visible=false и верните его в значение trueЭто выводит Internet Explorer на передний план, но он не выбран (фокус?), Поэтому команда SendKeys не будет работать.

    ActiveWindow.WindowState = xlMinimized
    ie.Visible = False
    DoEvents
    ie.Visible = True

Я бы хотел, чтобы Internet Explorer был спереди и выбран такчто я могу SendKeys.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...