Webseite per VBA ausfüllen ohne Feldname
09.03.2016 10:02:15
Wolfgang
mir ist bewusst, dass es das Thema Webseite ausfüllen per VBA schon des öfteren gegeben hat, ich finde dennoch keinerlei Lösung für mein derzeitiges Problem.
Mit folgendem Code kann ich ja problemlos die beiden Felder "sap-user" und "sap-password" ausfüllen und mich somit anmelden:
Set oIE = CreateObject("InternetExplorer.Application")
With oIE
.Visible = True
.Navigate2 sURL
With .Document.forms(0)
.elements("sap-user").Value = sUser
.elements("sap-password").Value = sPass
.Document.forms(0).submit
End With
End With
Für die Zeilen .elements(NAME).Value läßt sich der Name der Felder im IE 11 recht problemlos auslesen, in dem man in der Menüleiste Ansicht - Quelle auswählt und im Quelltext nach "input id" oder "input name" sucht.
Alternativ geht auch (aber bei unseren SAP-Seiten zum Beispiel nicht, da das Kontextmenü deaktiviert wurde) die Möglichkeit, nach Aufruf der Seite im IE die Taste F12 zu drücken und anschließend mit der rechten Maustaste in das gewünschte Feld klicken und im Kontextmenü "Element untersuchen" auswählen.
Die Zeile im Quelltext, die das Input-Feld beinhaltet, wird dann farblich hinterlegt.
Nach der Anmeldung werden aber alle Felder nur noch über JaveScripte in Forms / Iframes geladen und ich habe scheinbar keine Chance mehr, an die Feldnamen oder Feld-IDs der Inputfelder zu kommen.
Die JaveScripte habe ich mir auch gezogen und untersucht, doch darüber habe ich auch keine Feldnamen oder IDs ermittelt bekommen. Allerdings werden in den JavaScriten erneut andere JavaScripte geladen und da hatte ich keinerlei Chance mehr dran zu kommen.
Nun wäre meine Frage, habe ich eine Möglichkeit, auch ohne Ermittlung der Feldnamen oder Feld-ID die Felder dennoch zu befüllen, á la Inputfeld(0).Value = Wert1 ?
Danke für Eure Ideen und Vorschläge.