2016-07-12 4 views
0

Ich verwende diesen Code Fill user name and password in a webpage using VBA, um mich auf einer Website anzumelden, aber ich stoße auf ein Problem. Da der Benutzername und das Passwort bereits im Browser gespeichert sind, fügt er die uid/pass erneut hinzu und erzeugt einen Fehler beim Login-Vorgang. Gibt es eine Möglichkeit, einen Code hinzuzufügen, um alle zuvor eingegebenen UID/Pass zu löschen?Verwenden von VBA, um sich bei einer Website anzumelden und vorherige Anmeldedaten zu löschen

Sub test() 
' open IE, navigate to the desired page and loop until fully loaded 
Set ie = CreateObject("InternetExplorer.Application") 
my_url = "https://hb2.bankleumi.co.il/e/Login.html" 

With ie 
    .Visible = True 
    .Navigate my_url 
    .Top = 50 
    .Left = 530 
    .Height = 400 
    .Width = 400 

Do Until Not ie.Busy And ie.readyState = 4 
    DoEvents 
Loop 

End With 

' Input the userid and password 
ie.Document.getElementById("uid").Value = "testID" 
ie.Document.getElementById("password").Value = "testPW" 

' Click the "Search" button 
ie.Document.getElementById("enter").Click 

Do Until Not ie.Busy And ie.readyState = 4 
    DoEvents 
Loop 
End Sub 
+1

zuerst prüfen, ob der Wert bereits die aktueller Benutzername, in diesem Fall, einfach weitergehen und klicken; Andernfalls versuchen Sie es mit einer Zeile ".Value =" "? zu löschen? –

+0

@ScottHoltzman Brilliant. Das Löschen mit .value = "" hat perfekt funktioniert. Vielen Dank! Wenn Sie es als Antwort veröffentlichen, würde ich mehr als glücklich sein, es zu akzeptieren, damit der Thread schließen kann. – TonyP

Antwort

2

können Sie testen, ob der aktuell geladenen Benutzernamen gleich ist, und wenn ja, klicken Sie einfach auf, ansonsten klar aus den bestehenden Benutzernamen mit einem .Value = ""

If ie.Document.getElementById("uid").Value = "testID" Then 
Else 
    ie.Document.getElementById("uid").Value = "" 
    ie.Document.getElementById("password").Value = "" 
    ie.Document.getElementById("uid").Value = "testID" 
    ie.Document.getElementById("password").Value = "testPW" 
End If 
Verwandte Themen