2015-08-03 3 views
8

После недавней версии Windows 10, включая новый браузер Microsoft Edge, кто-нибудь просто узнает, как открыть браузер Microsoft Edge через Excel VBA. Я пробовал искать веб-сайт без везения.Переключение с Internet Explorer на Microsoft Edge

Это текущее базовое кодирование Excel VBA я использую, чтобы открыть Internet Explorer:

Sub xyz() 

Dim Browser As SHDocVw.InternetExplorer 'Microsoft Internet Controls 
Dim HTMLdoc As MSHTML.HTMLDocument 'Microsoft HTML Object Library 
Dim URL As String 

    URL = "http://www.bbc.co.uk/news" 
    Set Browser = New InternetExplorer 
    Browser.Silent = True 
    Browser.navigate URL 
    Browser.Visible = True 
    Do 
    Loop Until Browser.readyState = READYSTATE_COMPLETE 

    Set HTMLdoc = Browser.document 

End Sub 

Это очень прямой кусок кодирования VBA, чтобы открыть веб-сайт BBC, например.

Однако, что нового фрагмента кодирования, чтобы открыть Microsoft Edge?

+1

Это делает гораздо больше, чем открытие, оно извлекает DOM открытой страницы в качестве объекта, доступного для сценариев, - это то, что вы хотите сделать? Если вы просто хотите открыть URL-адрес и забыли об этом, вы можете shellexecute 'microsoft-edge: http: // acme.com' –

+0

Спасибо, Алекс, я думаю, и считаю, что это просто альтернативное решение для использования Microsoft Edge от Shell Execute для время. Тем не менее, я мало знаю о программном обеспечении Shell Execute, поэтому, пожалуйста, вы можете привести пример? Большое спасибо и спасибо. – Charlie

+0

http://stackoverflow.com/questions/31302304/will-microsoft-edge-support-com-automation-internetexplorer-object –

ответ

1

Согласно MS here, IE11 поставляется с Windows 10

Браузер по умолчанию для Windows 10 является Microsoft Край, который питается от нашего нового движка визуализации и наш путь вперед для Web на Windows. Разработчики сайтов должны сосредоточить свое тестирование на Microsoft Edge для нового и существующего опыта. Internet Explorer 11 будет включен для некоторых устаревших сценариев, и у пользователей будет возможность выбрать его как браузер по умолчанию, например, с любым другим браузером.

Таким образом, существующий код для IE должен продолжать работать. Не пробовал, хотя.

Некоторые технические вещи на Краю можно найти here

Как Мон 10-Aug-2015, я модернизировал один ПК с Win 7 Pro SP1 для Win 10 Pro и код поставляется отлично работает. IE11 отлично работает и показывает веб-сайт. IE11 download page подтверждает, что я уже установил его.

+0

Спасибо ChipsLetten, я решил согласиться с предложением Alex K открыть Microsoft Edge с помощью Shell Execution на короткий срок - см. выше. – Charlie

+0

Я запускаю [tag: windows-10], и любая ссылка на 'InternetExplorer.Application' выдает ошибку, в которой объект ActiveX не может быть создан, поэтому я не думаю, что это так. –

+0

В моей установке Win10 Pro IE 11 отображается как «функция Windows» в панели управления -> Программы и функции -> Включить или отключить функции Windows. Возможно, стоит проверить, нужно ли установить флажок, чтобы установить его. – ChipsLetten

0

У меня была аналогичная проблема при обновлении до Windows 10. Оказывается, «Microsoft Internet Controls» и «Microsoft HTML Object Library» были удалены из «Ссылки». Их добавление разрешило проблему, и код работал нормально, не требуя каких-либо изменений. Не знаю, помогает ли это.

0

Это может быть не ответ, но это сработало для меня.

Объект Internet Explorer по-прежнему будет открыт через VBA в Windows 10 с использованием IE11. Тем не менее, я должен был попросить Cortana сначала открыть IE11, чтобы он разобрал все всплывающие окна «первого раза», а что нет. «Добро пожаловать в IE11» и «Давайте начнем» и т. Д.

Как только я это обойду и закрыл браузер. Я снова запустил свой макрос, и объект браузера подошел нормально и работал нормально. Надеюсь, это поможет кому-то.

P.S. Я использую метод CreateObject для создания окна браузера.

0

как открыть пограничный браузер Microsoft с помощью Excel VBA

VBS/VBA использует COM объектную модель (ActiveX) для взаимодействия с настольными процессами и этой функции не будут доступны для Edge.

К счастью, для автоматизации существуют новые кросс-браузерные решения (т. Е. WebDriver), и Edge принимает эти новые стандарты. К сожалению, чтобы использовать их, используемые методы должны измениться.

Дубликат Will Microsoft Edge support COM automation (InternetExplorer object)?.