Hallo zusammen,
habe folgendes Problem.
Ich möchte gerne ein VBA-Makro schreiben, dass mir im Intranet eine Seite öffnet, dort auf einen Login-Button drückt und anschließend noch verschiedene Links öffnet. Habe es soweit hinbekommen, dass die Seite im Browser geöffnet wird, aber ich bekomme es einfach nicht hin, dass der Button für den Login gedrückt wird...
Hier der Code der Website (des Buttons):
<div id="divinfo" class="mainframe" style="color:#000000;position:relative;width:400px;background-color:transparent;left:5px;top:20px;float:none;text-align:left;" type="button">
<input onclick="return Button1_onclick()" value="WebClient starten" style="border-style : none; font-size:10pt;font-weight:bold; font-f…:center; background-color:#3073b4; height:28px; width:150px;"></input>
Anmelden
</div>
.... der Quelltext der Hauptseite ist mit einem Java-Script, da steht was mit :
autoLoginWithTomcat
Und hier mein VBA-Code:
Option Explicit
Public IEApp, IEDocument, btn, elm As Object
Public Sub Einloggen()
'Neues Browser-Objekt erzeugen
Set IEApp = GetObject("new:{D5E8041D-920F-45e9-B8FB-B1DEB82C6E5E}")
'Browser sichtbar machen
IEApp.Visible = True
' Intranetseite aufrufen
IEApp.navigate "***INTRANETSEITE***" ' Hier steht die Intranet-URL!
' Seitenaufbau abwarten
Call SeitenaufbauAbwarten
' Modus als "Zur Ausfuhr" deklarieren
Set btn = IEDocument.getElementsByTagName("input").Click // mit .Click kommt Fehler, dass die Methode das nicht kann, onclick funktioniert auch nicht
************* // mit dem zusätzlichen if passiert gar nichts!
For Each elm In btn
If elm.Value = "WebClient starten" Then
elm.Click
Exit For
End If
Next
***********
' Seitenaufbau abwarten
Call SeitenaufbauAbwarten
End Sub
Public Sub SeitenaufbauAbwarten()
'Vollständigen Aufbau der Internetseite abwarten und neu geöffnete Seite aktivieren
Do: Loop Until IEApp.Busy = False
Do: Loop Until IEApp.Busy = False
Set IEDocument = IEApp.Document
Do: Loop Until IEDocument.ReadyState <> 4
End Sub
|