VBA ialah bahasa pengaturcaraan yang sangat popular terutamanya digunakan untuk melaksanakan fungsi dan tugas automasi dalam Microsoft Office. JavaScript ialah bahasa skrip yang sangat fleksibel yang sering digunakan dalam pembangunan web bahagian hadapan. Dalam beberapa senario, kita perlu memanggil JavaScript dalam VBA. Artikel ini akan memperkenalkan dua kaedah untuk melaksanakan JavaScript dalam VBA.
Kaedah 1: Kawalan WebBrowser
Kawalan WebBrowser ialah kawalan yang digunakan dalam VBA untuk memaparkan kandungan Web Ia boleh membuka URL tertentu, mendapatkan kandungan web, dsb. Di samping itu, ia juga boleh melaksanakan kod JavaScript. Berikut ialah contoh kod:
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
Dalam kod sampel ini, kami membuka carian Baidu dengan mencipta objek InternetExplorer.Application halaman, dan selepas halaman dimuatkan, pernyataan JavaScript dilaksanakan melalui kaedah Document.parentWindow.execScript, dan tajuk halaman web ditukar kepada "VBA panggilan JavaScript".
Perlu diambil perhatian bahawa apabila menggunakan kawalan WebBrowser untuk memanggil JavaScript, anda perlu menunggu halaman dimuatkan, jika tidak, JavaScript mungkin tidak dapat dilaksanakan.
Kaedah 2: Contoh IE
Selain kawalan WebBrowser, kami juga boleh memanggil JavaScript dengan mencipta tika IE. Berikut ialah kod sampel:
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
Dalam kod sampel ini, kami mula-mula membuat contoh IE dan membukanya carian Baidu muka surat. Kemudian objek halaman diperolehi melalui oIE.document, dan pernyataan JavaScript dilaksanakan melalui kaedah Document.parentWindow.execScript untuk menukar tajuk halaman web kepada "VBA panggilan JavaScript".
Perlu diambil perhatian bahawa apabila memanggil JavaScript menggunakan contoh IE, anda juga perlu menunggu halaman dimuatkan sebelum melaksanakan JavaScript.
Kesimpulan
Di atas ialah dua kaedah untuk melaksanakan JavaScript dalam VBA, menggunakan kawalan WebBrowser dan contoh IE. Kedua-dua kaedah boleh melaksanakan fungsi memanggil JavaScript dalam VBA, tetapi anda perlu memberi perhatian kepada titik utama penyiapan pemuatan halaman. Saya harap artikel ini dapat membantu anda menyelesaikan masalah menggunakan JavaScript dalam VBA.
Atas ialah kandungan terperinci Dua cara untuk melaksanakan javascript dalam vba. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!