>  기사  >  웹 프론트엔드  >  VBA에서 자바스크립트를 실행하는 두 가지 방법

VBA에서 자바스크립트를 실행하는 두 가지 방법

PHPz
PHPz원래의
2023-04-24 10:49:462070검색

VBA는 주로 Microsoft Office에서 자동화 기능 및 작업을 구현하는 데 사용되는 매우 널리 사용되는 프로그래밍 언어입니다. JavaScript는 프런트 엔드 웹 개발에 자주 사용되는 매우 유연한 스크립팅 언어입니다. 일부 시나리오에서는 VBA에서 JavaScript를 호출해야 합니다. 이 기사에서는 VBA에서 JavaScript를 실행하는 두 가지 방법을 소개합니다.

방법 1: WebBrowser 컨트롤

WebBrowser 컨트롤은 VBA에서 웹 콘텐츠를 표시하는 데 사용되는 컨트롤로, 지정된 URL을 열고 웹 콘텐츠를 얻을 수 있습니다. 이 외에도 JavaScript 코드를 실행할 수도 있습니다. 다음은 샘플 코드입니다.

Sub RunJavaScriptWithWebBrowser()

Dim oBrowser As Object
Set oBrowser = CreateObject("InternetExplorer.Application")

'打开网页
oBrowser.Visible = True
oBrowser.Navigate "https://www.baidu.com/"

'等待页面加载完成
Do While oBrowser.ReadyState <> 4
    DoEvents
Loop

'执行 JavaScript
oBrowser.Document.parentWindow.execScript "document.title='VBA 调用 JavaScript'", "JavaScript"

'关闭浏览器
oBrowser.Quit
Set oBrowser = Nothing

End Sub

이 샘플 코드에서는 InternetExplorer.Application 개체를 생성하여 Baidu 검색 페이지를 열고 페이지가 로드된 후 Document.parentWindow를 사용합니다. .execScript 이 메소드는 JavaScript 문을 실행하고 웹 페이지 제목을 "VBA 호출 JavaScript"로 변경합니다.

WebBrowser 컨트롤을 사용하여 JavaScript를 호출하는 경우 페이지가 로드될 때까지 기다려야 합니다. 그렇지 않으면 JavaScript가 실행되지 않을 수 있습니다.

방법 2: IE 인스턴스

WebBrowser 컨트롤 외에도 IE 인스턴스를 생성하여 JavaScript를 호출할 수도 있습니다. 다음은 샘플 코드입니다.

Sub RunJavaScriptWithIE()

Dim oIE As Object
Set oIE = CreateObject("InternetExplorer.Application")

'打开网页
oIE.Visible = True
oIE.Navigate "https://www.baidu.com/"

'等待页面加载完成
Do While oIE.ReadyState <> 4
    DoEvents
Loop

'获取页面对象
Dim oDoc As Object
Set oDoc = oIE.document

'执行 JavaScript
oDoc.parentWindow.execScript "document.title='VBA 调用 JavaScript'", "JavaScript"

'关闭浏览器
oIE.Quit
Set oIE = Nothing

End Sub

이 샘플 코드에서는 먼저 IE 인스턴스를 생성하고 Baidu 검색 페이지를 엽니다. 그런 다음 oIE.document를 통해 페이지 개체를 얻고 Document.parentWindow.execScript 메서드를 통해 JavaScript 문을 실행하여 웹 페이지 제목을 "VBA가 JavaScript를 호출합니다"로 변경합니다.

IE 인스턴스를 사용하여 JavaScript를 호출하는 경우 JavaScript를 실행하기 전에 페이지가 로드될 때까지 기다려야 한다는 점에도 유의해야 합니다.

결론

위는 WebBrowser 컨트롤과 IE 인스턴스를 사용하여 VBA에서 JavaScript를 실행하는 두 가지 방법입니다. 두 방법 모두 VBA에서 JavaScript를 호출하는 기능을 구현할 수 있지만 페이지 로딩 완료의 핵심 포인트에 주의해야 합니다. 이 기사가 VBA에서 JavaScript를 사용할 때 발생하는 문제를 해결하는 데 도움이 되기를 바랍니다.

위 내용은 VBA에서 자바스크립트를 실행하는 두 가지 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.