Herbers Excel-Forum - das Archiv

Sendkey-Frage für IE

Bild

Betrifft: Sendkey-Frage für IE
von: marcl

Geschrieben am: 20.12.2006 10:01:19
Guten Morgen Forumsgemeinde,
ich versuche, eine Anwendung im IE aufzurufen und automatisch 2 Passwörter eunzutragen. Lästiges anmelden soll in Zukunft automatisch geschehen.
Set oIE = CreateObject("InternetExplorer.Application")
oIE.navigate "https://....jsp"
oIE.Visible = True
soweit, so gut. Aber wie geht das mit den SendKeys?
Muss "Tab, Tab, Passwort1, Tab, Passwort2, Tab, Enter" zusammenbringen.
Bin für jede Hilfe dankbar
Gruß
marcl
Bild

Betrifft: AW: Sendkey-Frage für IE
von: Matthias G
Geschrieben am: 20.12.2006 10:27:22
Hallo Marcl,
in der Excel Hilfe steht doch unter SendKeys eine Tabelle:
EINGABETASTE: {ENTER}oder ~
TAB: {TAB}
Es ist eher ein Problem, dass du warten musst, bis die Seite geladen ist.
Gruß Matthias
Bild

Betrifft: AW: Sendkey-Frage für IE
von: marcl
Geschrieben am: 20.12.2006 10:33:06
Hallo Matthias,
warten kann man mit Application.Wait now + TimeSerial(0,00,05) und mit der Tabelle komme ich auch klar, aber wie schreibe ich das.
Application.Send...
oIE.send...
das will bei mir ncith so ganz funktionieren.
Gruß
marcl
Bild

Betrifft: AW: Sendkey-Frage für IE
von: Matthias G

Geschrieben am: 20.12.2006 10:45:11
Hallo Marcl,
du musst die Anwendung auch aktivieren:
Sub test()
Dim oIE As Object
Set oIE = CreateObject("InternetExplorer.Application")
oIE.navigate "https://...."
oIE.Visible = True
Application.Wait Now + TimeValue("00:00:05")
AppActivate oIE.Name
Application.SendKeys "{TAB}{TAB}Passwort1{TAB}Passwort2{TAB}~"
End Sub

Gruß Matthias
Bild

Betrifft: AW: Sendkey-Frage für IE
von: marcl

Geschrieben am: 20.12.2006 11:18:47
ich bekomme das nicht hin!
wie definiere ich die Passwörter
Passwort1 = "123456"
Passwort2 = "789123"?
Sub test()
Dim oIE As Object
Set oIE = CreateObject("InternetExplorer.Application")
oIE.navigate "https://banking.bordesholmer-sparkasse.de/cgi/anfang.cgi"
oIE.Visible = True
Application.Wait Now + TimeValue("00:00:05")
AppActivate oIE.Name
SendKeys "{TAB}{TAB}Passwort1{TAB}Passwort2{TAB}~"
End Sub

Gruß
marcl
Bild

Betrifft: AW: Sendkey-Frage für IE
von: Matthias G
Geschrieben am: 20.12.2006 11:22:15
Hallo Marcl,
VBA gut?
Dim Passwort1 As String, Passwort2 As String
Passwort1 = "123456"
Passwort2 = "789123"
SendKeys "{TAB}{TAB}" & Passwort1 & "{TAB}" & Passwort2 & "{TAB}~"

Gruß Matthias
Bild

Betrifft: AW: Sendkey-Frage für IE
von: marcl

Geschrieben am: 20.12.2006 11:52:42
gut ist relativ.Was verstehst Du unter gut? Dateien in PDF umwandeln, suchen, in andere Ordner verschieben, drucken, löschen, Daten verschieben, Formeln etc schreiben läuft. Aber kein IE und Send Keys.
Dim ... hatte ich dabei und Passwörter einzelnen Zellen in Excel zugeordnet habe ich auch und das funzt.
Das man die Variablen mit & trennt, ist mir auch bekannt.
AppActivate oIE.Name
mag er nicht. Laufzeitfehler 5 ungültiger Prozeduraufruf oder ungültiges Argument.Muss man da noch den Namen des IE Fensters eingeben?
Da ich mich mit SendKeys und IE nicht auskenne,dachte ich,es muss ohne & geschrieben werden.
Bild

Betrifft: AW: Sendkey-Frage für IE
von: Matthias G

Geschrieben am: 20.12.2006 11:58:09
Hallo Marcl,
AppActivate oIE.Name
mag er nicht. Laufzeitfehler 5 ungültiger Prozeduraufruf oder ungültiges Argument.

Es ist aber Voraussetzung, dass die Anwendung den Focus hat. Bei mir klappt das einwandfrei.
Ja, AppActivate braucht den Fensternamen als Argument. Vielleicht kannst du ihn ja manuell einsetzen statt oIE.Name zu verwenden.
Sendkeys braucht als Argument einfach einen String, deshalb die Verkettung mit &.
Gruß Matthias
Bild

Betrifft: erledigt, danke
von: marcl
Geschrieben am: 21.12.2006 09:34:36
Bild

Betrifft: AW: erledigt, danke
von: Matthias G
Geschrieben am: 21.12.2006 09:36:51
Hallo Marcl,
fürs Archiv wäre es schön, wenn du deine Lösung hier nochmal kurz verrätst.
Gruß Matthias
Bild

Betrifft: AW: erledigt, danke
von: marcl

Geschrieben am: 24.12.2006 16:57:20
ist mit der Objektbibliothelk erstellt.
Sub test()
userid = Range("a1")
passwort = Range("a2")
myUrl = "https:..."
Set oIE = New SHDocVw.InternetExplorer
oIE.Navigate2 myUrl
Do While oIE.readyState <> 4
Loop
oIE.Visible = True
oIE.document.forms(0).username_input_id.Value = userid
oIE.document.forms(0).password_input_id.Value = passwort
oIE.document.forms(0).button_login_id.click ' mit freundl. Unterst. von Anton
Set oIE = Nothing
End Sub

Bild

Betrifft: AW: Sendkey-Frage für IE
von: Hoffi

Geschrieben am: 20.12.2006 11:25:07
Hallo,
Dim Passwort1$,Passwort2$
oder
Dim Passwort1 AS String
Dim Passwort2 AS String
Grüße
Hoffi
 Bild