2015-08-03 24 views
8

Sau bản phát hành gần đây của Windows 10, bao gồm trình duyệt mới - Microsoft Edge - có ai đơn giản biết cách mở trình duyệt Microsoft Edge thông qua Excel VBA không. Tôi đã thử tìm kiếm trên trang web mà không gặp bất kỳ sự may mắn nào.Chuyển từ Internet Explorer sang Microsoft Edge

Đây là cơ bản mã hóa Excel VBA hiện tại tôi sử dụng để mở 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 

Đây là một mảnh rất thẳng về phía trước của VBA mã hóa để mở trang web BBC ví dụ.

Tuy nhiên, đoạn mã mới để mở Microsoft Edge là gì?

+1

Điều này có nhiều hơn mở, nó lấy DOM của trang đã mở dưới dạng đối tượng có thể viết được, đó là những gì bạn muốn làm? Nếu bạn chỉ muốn mở một URL và quên đi nó, bạn có thể che giấu "microsoft-edge: http: // acme.com' –

+0

Cảm ơn Alex, tôi nghĩ và tin rằng đây chỉ là giải pháp thay thế để sử dụng Microsoft Edge bởi Shell Execute cho hiện tại. Tuy nhiên, tôi không biết nhiều về chương trình Shell Execute, vì vậy bạn có thể cung cấp một ví dụ không? Nhiều đánh giá cao và cảm ơn. – Charlie

+0

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

Trả lời

1

Theo MS here, tàu với Windows 10

Trình duyệt mặc định cho Windows 10 IE11 là Microsoft Edge, được trang bị động cơ render mới của chúng tôi và là con đường của chúng ta về phía trước cho Web trên Windows. Các nhà phát triển trang web nên tập trung thử nghiệm của họ trên Microsoft Edge cho những trải nghiệm mới và hiện có. Internet Explorer 11 sẽ được bao gồm cho một số kịch bản cũ và người dùng sẽ có tùy chọn để chọn nó làm trình duyệt mặc định, giống như với bất kỳ trình duyệt nào khác.

Vì vậy, mã hiện tại cho IE sẽ tiếp tục hoạt động. Không thử nó mặc dù.

Một số công cụ kỹ thuật về Edge có thể được tìm thấy here

Tính đến Mon 10-Aug-2015, tôi đã nâng cấp một máy tính từ Win 7 Pro SP1 để Win 10 Pro và mã bạn cung cấp các tác phẩm tốt. IE11 chạy tốt và hiển thị trang web. IE11 download page xác nhận rằng tôi đã cài đặt nó.

+0

Cảm ơn bạn ChipsLetten, tôi đã quyết định đi cùng với đề xuất của Alex K để mở Microsoft Edge thông qua Shell Execution trong ngắn hạn - xem ở trên. – Charlie

+0

Tôi đang chạy [tag: windows-10] và bất kỳ tham chiếu nào đến 'InternetExplorer.Application' ném lỗi cho biết đối tượng ActiveX không thể được tạo - vì vậy tôi không nghĩ đây là trường hợp. –

+0

Khi cài đặt Win10 Pro, IE 11 hiển thị dưới dạng "tính năng Windows" trong Pa-nen Điều khiển -> Chương trình và Tính năng -> Bật hoặc tắt các tính năng của Windows. Có thể đáng để kiểm tra xem bạn có cần kiểm tra hộp để cài đặt hay không. – ChipsLetten

0

Tôi gặp sự cố tương tự khi cập nhật lên Windows 10. Tắt 'Microsoft Internet Controls' và 'Microsoft HTML Object Library' đã bị "xóa" khỏi 'Tham chiếu'. Thêm họ giải quyết vấn đề và mã làm việc tốt mà không yêu cầu bất kỳ sự thay đổi nào. Không biết nếu điều này giúp.

0

Đây có thể không phải là câu trả lời nhưng nó có hiệu quả đối với tôi.

Đối tượng Internet Explorer sẽ vẫn mở thông qua VBA trong Windows 10 bằng IE11. Tuy nhiên, tôi đã phải yêu cầu Cortana mở IE11 trước để nó có thể phân loại tất cả các cửa sổ bật lên "lần đầu tiên sử dụng" và những gì không. "Chào mừng bạn đến với IE11" và "Hãy bắt đầu", v.v.

Khi tôi đã hoàn thành tất cả điều đó và đóng trình duyệt. Tôi chạy lại macro của mình và đối tượng trình duyệt xuất hiện tốt và hoạt động như bình thường. Hy vọng điều này sẽ giúp một ai đó.

P.S. Tôi đang sử dụng phương pháp CreateObject để tạo cửa sổ trình duyệt.

0

làm thế nào để mở trình duyệt Cạnh Microsoft qua Excel VBA

VBS/VBA sử dụng mô hình đối tượng COM (ActiveX) để giao tiếp với các quá trình máy tính để bàn và tính năng này sẽ không được cung cấp cho Edge.

May mắn thay các giải pháp trình duyệt chéo mới hơn (ví dụ: WebDriver) tồn tại để tự động hóa và Edge áp dụng các tiêu chuẩn mới này. Thật không may, để sử dụng chúng, các kỹ thuật được sử dụng sẽ cần phải thay đổi.

Bản sao của Will Microsoft Edge support COM automation (InternetExplorer object)?.

Các vấn đề liên quan