Ich versuche, ein Makro auf VBA zu Yahoo zu machen. Aber ich habe Probleme, auch das Passwort zu übermitteln, da sich Benutzername/Passwort auf verschiedenen Seiten befinden.VBA Yahoo Login
Ich halte den Fehler zu erhalten
Laufzeitfehler '424' Objekt erforderlich
auf der .Document.getElementById("login-passwd").Value
Linie.
Sub WebLogin()
Set IE = CreateObject("InternetExplorer.Application")
With IE
.Visible = True
.Navigate "https://login.yahoo.com/"
Do Until .ReadyState = READYSTATE_COMPLETE
DoEvents
Loop
.Document.getElementById("login-username").Value = "username"
.Document.getElementById("login-signin").Click
Do Until .ReadyState = READYSTATE_COMPLETE
DoEvents
Loop
'Application.Wait (Now + TimeValue("0:00:10"))
.Document.getElementById("login-passwd").Value = "password*"
.Document.getElementById("login-signin").Click
End With
End Sub
Ich stelle mir vor, dass das HTML-Element nicht gefunden beeing, aber ich habe bereits versucht, eine Verzögerung geben, die einen anderen Code der Seite gewartet zu laden und zu nichts zu arbeiten seens.
Hier sind die spezifischen HTML-Code für beide Felder.
<input name="username" tabindex="1" class="phone-no " id="login-username" autofocus="true" type="text" placeholder="Insira seu e-mail" value="" autocorrect="off" autocapitalize="none">
<input type="password" id="login-passwd" name="password" placeholder="Senha" autofocus="">
Irgendwelche Vorschläge?
Vielen Dank für Ihre Hilfe. Ich lerne VBA on the fly, immer noch auf Grundlagen. Ich habe Ihren Code ausprobiert, und es wirft genau den gleichen Fehler auf und macht genau dasselbe wie zuvor. Beachten Sie, dass Sie den Benutzernamen eingeben, abschicken und abstürzen, bevor Sie das Passwort eingeben. – Arank
Ich denke, es fehlt ein warten, bis bereit, nach der Übermittlung des Benutzernamens, nicht wahr? Da beide Felder auf verschiedenen Seiten sind. Aber ich habe das versucht und auch nicht funktioniert. – Arank
Auch das richtige ist "login-passwd" oder? Das habe ich aber auch mit Erfolg versucht. – Arank