Ich verwende SHDocVw.InternetExplorer
, um in PowerPoint eine lokale HTML-Datei für den Benutzer anzuzeigen. Die Datei enthält ein Formular mit einer Schaltfläche zum Senden, und ich möchte meine VBA-Funktion ausführen, wenn auf die Schaltfläche geklickt wird. Ich habe folgendes gemacht, um das onQuit-Event des InternetExplorers zu behandeln.Handle HTMLElement Ereignisse in VBA
Class-Modul "CIE"
Public WithEvents ie As SHDocVw.InternetExplorer
Private Sub ie_onQuit()
Debug.Print "onQuit was fired"
End Sub
Modulcode
Option Explicit
Public curCIE As CIE
Sub open_ie()
Dim CIEobj As CIE
Set CIEobj = New CIE
Dim ie As SHDocVw.InternetExplorer
Set ie = New SHDocVw.InternetExplorer
ie.Visible = True
ie.Navigate "C:\search.html"
Do While ie.Busy Or ie.readyState <> 4
DoEvents
Loop
Set CIEobj.ie = ie
Set curCIE = CIEobj
End Sub
Ich möchte eigentlich das Ereignis OnClick
curCIE.ie.Document.getElementsByTagName("button").Item(0)
aber ich weiß nicht, zu handhaben, wie Sie vorgehen.
einige Deklarieren 'App' Variable innerhalb des IE' window' Objekts über '.execScript' Methode, weisen Sie ihr den Verweis auf das Excel' Application' Objekt zu, dann rufen Sie das Excel Makro mit 'App.Run" MacroName "innerhalb des IE Buttons onclick Event Handler Code auf. [Dieses Beispiel] (https://stackoverflow.com/a/38134477/2165759) kann helfen. – omegastripes