Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Login Onvista Bank Webtrading

Forumthread: Login Onvista Bank Webtrading

Login Onvista Bank Webtrading
03.11.2018 20:25:17
Bernd
Hallo Forum,
ich würde mich gerne per Excel-VBA bei der Onvista Bank einloggen.
IEApp.Navigate "https://webtrading.onvista-bank.de/login"
geht auch, nur bei der Zeile
.getelementbyid("login").Value = "Benutzername" 'anpassen ~f~
kommt der Laufzeitfehler 424 - Objekt nicht gefunden
Vielleicht kann sich bitte ein Crack einmal den HTML Code ansehen und mir sagen, warum das nicht "funzt".
Die id = "login" gibt es jedenfalls.
~f~ <input id="login" class=.....und so weiter
Besten Dank vorab
Bernd
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Login Onvista Bank Webtrading
04.11.2018 17:33:44
onur
Guckst du hier:
https://social.msdn.microsoft.com/Forums/en-US/5bb99021-f1d8-459a-b977-071bb36f4c6d/vba-loggin-into-secure-websites?forum=isvvba
AW: Login Onvista Bank Webtrading
04.11.2018 19:47:04
Bernd
Hallo Onur,
das funktioniert bei mir nicht. Ich habe den Code als Makro in eine Exceldatei kopiert und beim kompilieren bleibt er bereits in der Codezeile
"Dim doc As HTMLDocument"
mit der Fehlermeldung hängen Fehler beim Kompilieren - benutzerdefinierte Typ nicht definiert.
Meine Vba-Kenntnisse sind leider zu schlecht, als dass ich hier alleine weiterkomme
Besten Dank dennoch
Bernd
Anzeige
AW: Login Onvista Bank Webtrading
05.11.2018 12:48:59
ChrisL
Hi Bernd
Probiere mal mit folgendem Link:
https://webtrading.onvista-bank.de/app/auth-login/templates/login-form.html
objIExplorer.Document.getElementById("login").Value = "MyUserID"
objIExplorer.Document.getElementById("password").Value = "MyPW"
Den Login-Link habe ich in folgender JS-Datei gefunden:
https://webtrading.onvista-bank.de/js/login.js?0
cu
Chris
Anzeige
AW: Login Onvista Bank Webtrading
05.11.2018 17:52:34
Bernd
Hallo Chris,
das ist interessant. Folgende Situation:
Mit .getElementById("login").Value = "MyUserID" kann ich auf der von dir genannten Homepage die ID eingeben. Auch das Passwort geht.
objIExplorer.Document musste ich weglassen (da kam die Fehlermeldung 424)
Das System meldet zwar die erfolgreiche Anmeldung, der Link am unteren Ende der Seite zum Webtrading führt aber ins Leere. Ich habe das auch mit "normaler" Eingabe ausprobiert.
Die Seite scheint nicht mehr aktuell.
Hoffe, du hast noch eine Idee für die "normale" Webseite, die ich genannt habe...
Wäre ja auch zu schön gewesen...
Besten Dank schon mal dennoch für deine Mühe!
Bernd
Anzeige
AW: Login Onvista Bank Webtrading
05.11.2018 18:49:20
ChrisL
Hi Bernd
Ich vermute die Seite ist einfach zu "ver-java-scripted". (Frage offen)
Könntest ja einfach mal bei der Bank anfragen, ob es eine Art von API (Schnittstelle) gibt. Fragen kostet nichts und ich würde annehmen, dass es mindestens für B2B (business to business) eine Standardlösung für die Automatisierung von Transaktionen gibt.
cu
Chris
Anzeige
AW: Login Onvista Bank Webtrading
05.11.2018 19:15:35
Bernd
Hallo Chris,
hab ich schon gefragt...wird leider nicht zur Verfügung gestellt...
cu
Bernd
Anzeige

Infobox / Tutorial

Login bei Onvista Bank Webtrading mit Excel-VBA


Schritt-für-Schritt-Anleitung

Um dich über Excel-VBA bei der Onvista Bank einzuloggen, befolge diese Schritte:

  1. Öffne Excel und erstelle eine neue Arbeitsmappe.

  2. Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.

  3. Füge ein neues Modul hinzu:

    • Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsm)" und wähle "Einfügen" > "Modul".
  4. Füge den folgenden Code in das Modul ein:

    Sub LoginOnvista()
       Dim IEApp As Object
       Set IEApp = CreateObject("InternetExplorer.Application")
    
       ' URL zur Onvista Bank Webtrading Login-Seite
       IEApp.Navigate "https://webtrading.onvista-bank.de/login"
       IEApp.Visible = True
    
       ' Warte, bis die Seite vollständig geladen ist
       Do While IEApp.Busy Or IEApp.readyState <> 4
           DoEvents
       Loop
    
       ' Benutzername und Passwort eingeben
       IEApp.Document.getElementById("login").Value = "DeinBenutzername"
       IEApp.Document.getElementById("password").Value = "DeinPasswort"
    
       ' Login-Button klicken
       IEApp.Document.getElementById("login-button").Click
    End Sub
  5. Passe den Code an, indem du "DeinBenutzername" und "DeinPasswort" ersetzt.

  6. Führe das Makro aus, um dich einzuloggen.


Häufige Fehler und Lösungen

  • Fehler 424 - Objekt nicht gefunden: Dieser Fehler tritt häufig auf, wenn das Element mit der ID "login" nicht gefunden wird. Stelle sicher, dass die ID korrekt ist und dass die Seite vollständig geladen ist, bevor du versuchst, darauf zuzugreifen.

  • Kompilierungsfehler - benutzerdefinierte Typ nicht definiert: Dies kann passieren, wenn die "Microsoft HTML Object Library" nicht aktiviert ist. Gehe zu "Extras" > "Verweise" im VBA-Editor und aktiviere die Bibliothek.

  • Login funktioniert nicht: Wenn die Anmeldung nicht erfolgreich ist, könnte die Webseite Änderungen unterzogen haben. Überprüfe die aktuelle ID der Eingabefelder auf der Login-Seite.


Alternative Methoden

Falls das Einloggen über VBA nicht funktioniert, kannst du auch folgende Methoden ausprobieren:


Praktische Beispiele

Hier ist ein Beispiel, wie du die getElementById-Methode in VBA korrekt nutzen kannst:

Dim IEApp As Object
Set IEApp = CreateObject("InternetExplorer.Application")
IEApp.Navigate "https://webtrading.onvista-bank.de/login"
IEApp.Visible = True

Do While IEApp.Busy Or IEApp.readyState <> 4
    DoEvents
Loop

' Beispiel für das Einloggen
IEApp.Document.getElementById("login").Value = "MeinBenutzername"
IEApp.Document.getElementById("password").Value = "MeinPasswort"
IEApp.Document.getElementById("login-button").Click

Tipps für Profis

  • Nutze die Debug.Print-Funktion, um den Status deiner Variablen während der Ausführung zu überprüfen und Fehler schneller zu finden.
  • Setze Pausen in dein Skript, um sicherzustellen, dass die Webseiten vollständig geladen sind, bevor du auf Elemente zugreifst.

FAQ: Häufige Fragen

1. Warum funktioniert der Login über VBA nicht?
Es kann sein, dass die Webseite Änderungen erfahren hat oder die IDs der Elemente anders sind. Überprüfe die IDs und stelle sicher, dass die Webseite vollständig geladen ist.

2. Gibt es eine API für Onvista Bank?
Momentan bietet die Onvista Bank keine API für das öffentliche Einloggen an. Du kannst jedoch direkt bei der Bank nachfragen, ob es spezielle Lösungen gibt.

3. Welche Excel-Version benötige ich?
Die oben genannten VBA-Codes sind mit Excel 2016 und neueren Versionen kompatibel. Stelle sicher, dass du die Microsoft HTML Object Library aktiviert hast.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige