Die Community zu .NET und Classic VB.
Menü

VB 5/6-Tipp 0330: Web-Formulare automatisch ausfüllen lassen

 von 

Beschreibung 

Inmer wieder eine gern gestellte Frage im Forum. Hier jetzt endlich ein überschaubarer Lösungsansatz. Ein Formular einer beliebigen Intersneteite kann mit dieser Methode softwaremäßig ausgefüllt werden.

Schwierigkeitsgrad:

Schwierigkeitsgrad 1

Verwendete API-Aufrufe:

keine

Download:

Download des Beispielprojektes [4,62 KB]

'Dieser Quellcode stammt von http://www.activevb.de
'und kann frei verwendet werden. Für eventuelle Schäden
'wird nicht gehaftet.

'Um Fehler oder Fragen zu klären, nutzen Sie bitte unser Forum.
'Ansonsten viel Spaß und Erfolg mit diesem Source!

'------------- Anfang Projektdatei Project1.vbp -------------
' Die Komponente 'Microsoft Internet Controls (shdocvw.dll)' wird benötigt.

'--------- Anfang Formular "Form1" alias Form1.frm  ---------
' Steuerelement: Schaltfläche "cmdFill"
' Steuerelement: Schaltfläche "cmdSend"
' Steuerelement: Textfeld "txtTime"
' Steuerelement: Textfeld "txtDate"
' Steuerelement: Textfeld "txtName"
' Steuerelement: Webbrowsercontrol "wbrWebBrowser"
' Steuerelement: Beschriftungsfeld "lblText"


'Autor: Dominik Weber
'E-Mail: freund2001@gmx.de

Option Explicit

Private Sub cmdFill_Click()
    'Mit forms(0).feld1 wird angegeben, das das erste Objekt
    'mit dem Namen "feld1" im ersten Formular gefüllt werden
    'soll. Wenn es mehrere Formulare in einem HTML-Dokument
    'gibt, dann kann das entsprechende Formular mit
    'Forms(Formularnummer) angegeben werden (das erste Formular
    'hat die Nummer 0 das zweite 1 etc.).
  
    With wbrWebBrowser
        .Document.Forms(0).feld1.Value = txtName.Text
        .Document.Forms(0).feld2.Value = txtTime.Text
        .Document.Forms(0).feld3.Value = txtDate.Text
        .Document.Forms(0).textfeld.Value = lblText.Caption
    End With
End Sub

Private Sub cmdSend_Click()
    wbrWebBrowser.Document.Forms(0).submit.Click
End Sub

Private Sub Form_Load()
    wbrWebBrowser.Navigate App.Path & "\form.htm"
    txtName.Text = "Anonymus"
    txtTime.Text = Time
    txtDate.Text = Date
      
    lblText.Caption = "Property-Prozeduren sind standardmässig " & _
        "öffentlich, wenn sie nicht explizit mit Public oder Private " & _
        "festgelegt werden. Wird Static nicht angegeben, so bleiben die " & _
        "Werte lokaler Variablen zwischen Aufrufen nicht erhalten."
End Sub
'---------- Ende Formular "Form1" alias Form1.frm  ----------
'-------------- Ende Projektdatei Project1.vbp --------------

Tipp-Kompatibilität:

Windows/VB-VersionWin32sWin95Win98WinMEWinNT4Win2000WinXP
VB4
VB5
VB6

Hat dieser Tipp auf Ihrem Betriebsystem und mit Ihrer VB-Version funktioniert?

Ja, funktioniert!

Nein, funktioniert nicht bei mir!

VB-Version:

Windows-Version:

Ihre Meinung  

Falls Sie Fragen zu diesem Artikel haben oder Ihre Erfahrung mit anderen Nutzern austauschen möchten, dann teilen Sie uns diese bitte in einem der unten vorhandenen Themen oder über einen neuen Beitrag mit. Hierzu können sie einfach einen Beitrag in einem zum Thema passenden Forum anlegen, welcher automatisch mit dieser Seite verknüpft wird.

Archivierte Nutzerkommentare 

Klicken Sie diesen Text an, wenn Sie die 120 archivierten Kommentare ansehen möchten.
Diese stammen noch von der Zeit, als es noch keine direkte Forenunterstützung für Fragen und Kommentare zu einzelnen Artikeln gab.
Aus Gründen der Vollständigkeit können Sie sich die ausgeblendeten Kommentare zu diesem Artikel aber gerne weiterhin ansehen.

Kommentar von Bilbo Smith am 01.07.2011 um 17:04

Ich versuche, den Code zu modifizieren, um die folgenden Schritte ... (Ich habe einen Übersetzer von Englisch verwendet, um diese zu schreiben) ...
Ich möchte eine Website mit folgenden Zugangsdaten ...
<form action="demo.cgi">
<input type="text" name="address" size="60" /> <input
type = "submit" value = "Search" />
</ form>
Wie kann ich ändern Sie Ihre Form der Formulare auf dieser externen Website zu erkennen, und geben Sie die infomration in ihre Textfelder. Dann "Presse" den richtigen Submit-Button?

Kommentar von Markus am 16.05.2011 um 13:17

Ich habe folgendes Problem ... In einer Form habe ich einen Submit-Button:
<input value="Add" onclick="javascript:selectItem(Lastname(), UserId())" type="submit"> ...
Dieser Submitbutton hat keinen Name-Tag aber ein Javascript bei dem OnClick-Ereignis.
Ich möchte per VBS den Submit klicken und das Javascript bei onclick ausführen. folgende Varianten funktionieren schonmal nicht:
.Submit.Click
.Submit.onClick
.InvokeMember("Submit")
.Submit.InvokeMember("Click")
.Submit.InvokeMember("onClick")
Ich bin mit meinem Latein echt am ende ... Ich weiß auch nicht wie ich aus dem VBS das JS auf der Seite ausführen kann ohne den Submit-Button.
Bitte hilfe oder Vorschläge ...

Kommentar von Willi am 21.02.2011 um 10:03

Hat jemand auch die Lösung für Access 2007 über VBA ?

Kommentar von Jonathan am 25.08.2010 um 14:31

ich habe einefrage wie bekommt man wenn man bei vb eine textbox einbaut un einen text eigeben will wie kann man das machen das es sich automatisch inden Webbrowser überträgt Bitte um antwort

Kommentar von Chris am 28.11.2008 um 13:04

Hi!
Kann mir vl jemand sagen, wie ich das Select Control (Combo Box) in VB 6 beeinflussen kann? Der VB.net Tipp bringt mir leider nichts :(

Gruß

Chris

Kommentar von Rolf Klassen am 09.08.2008 um 10:36

Ich habe diesen Tipp gelesen und habe eine Frage:
Ob es möglich ist aus excel Makro eine URL(java Script) aufrufen und
auf bestimmte Schaltflächen der Seite klicken(mit VBA) und Text
in ein Suchfenster kopieren und mit Klick(VBA) bestätigen??

Kommentar von Dominik am 25.04.2008 um 17:28

hat sich erledigt,
mit invokemember("ondblClick") geht es wunderbar.
Warum es dann beim normalen Click einfach nur invokemember("click") heißt und nicht invokemember("onclick"), verstehe ich zwar nicht, deswegen bin ich wohl einfach nicht draufgekommen.

Kommentar von Dominik am 25.04.2008 um 08:49

Wie kann ich einen Doppelklick auslösen ?
invokemember("dblclick") geht schon mal nicht.

Das Element hat sowohl ein onClick, wie auch einen onDblClick-Event.

Danke, Dominik

Kommentar von Daniel am 10.02.2008 um 01:13

Ich will die daten auf einer PHP Seite eingeben! wie kann ich es den da machen? habe unten gelesen das es wohl nicht so einfach geht!
Danke Daniel

Kommentar von Benni am 07.01.2008 um 19:16

Checkbox im Webbrowsercontrol mit VB.net ankreuzen:

Webbrowser1.Document.Window.Frames("NameDesFrames").Document.GetElementById("IdDerCheckbox").SetAttribute("checked", "checked")



Eintrag in einem Selectfeld mit VB.net auswählen:

'Webbrowser1.Document.Window.Frames("NameDesFrames").Document.GetElementById("IdDesSelectfeldes").All.Item(IndexDerGewünschtenOptio n).SetAttribute("selected", "selected")

Kommentar von Eddy am 22.12.2007 um 10:30

Okay, ich weiß nun wie man mit einem Grafik-Button senden kann. Und zwar müsst ihr die Zeile:

wbrWebBrowser.Document.Forms(0).submit.Click

so stehen lassen, wenn ihr einen Grafik-Button habt bzw. ihn benutzen wollt.

Was ihr darüber noch schreiben müsst ist einfach:
On Error Resume Next

Somit muss das Ganze so aussehen:

Private Sub cmdSend_Click()
On Error Resume Next
wbrWebBrowser.Document.Forms(0).submit.Click
End Sub

Kommentar von Eddy am 21.12.2007 um 01:00

Mit dem Grafik-Button habe ich das selbe Problem.
Ich kann mit einem Grafik-Button nichts senden. Ansonsten funktioniert alles andere. Ich würde ebenfalls gerne wissen ob es eine Möglichkeit gibt, dies irgendwie einzustellen.

Kommentar von Nicki am 19.12.2007 um 10:39

Hallo zusammen,

das ausfüllen eines Formulares funktioniert ohne Probleme. Das einzige was ich einfach nicht hin bekommen ist das Versenden des Formulares über einen "Grafik-Button".
Code:
<input type="image" name="Login"......

Leider hat das "Image" kein Click-Event. Kennt jemand eine Möglichkeit???

Kommentar von Goldmoon am 05.12.2007 um 11:01

Von CIX88 am 28.04.2005 um 09:03
> wie kann ich den in ein Input Feld vom Typ 'file' schreiben?

garnicht

cix88
-----------------------------------------------------------------------------------------
Ich habe mir die daran beinahe Zähne ausgebissen, und einen weg gefunden wie es doch geht:

Me.BringToFront()
Me.AxWB.Document.all("Name des File elementes", 0).Focus()
My.Computer.Keyboard.SendKeys("Der Dateiname als String", True)
AxWB.Document.Forms(0).submit.Click()


Das Automatische ausfüllen von File Input ist normalerweise aus Sicherheits gründen nicht möglich. Also bitte nicht mißbrauchen! Sonst wird auch die vorgestellte methode irgendwann nicht mehr funzen!

MfG Goldmoon

Kommentar von Christian Dommel am 06.09.2007 um 22:16

und wie? und vorallem wie kann ich dann in ein Online Formular was einsetzen? Kannst du mal en Beispiel machen?

Kommentar von Michael am 06.09.2007 um 11:59

Hi Christian.

Also, das Tool funktioniert. Die adresse wird in hier festgelegt:

Private Sub Form_Load()
wbrWebBrowser.Navigate App.Path & "\form.htm"

Kommentar von Christian Dommel am 06.09.2007 um 10:44

Also bei mir macht dieses Tool garnix. Ich weiß nicht was ich falsch mach. In dem Explorerfenster wird angezeigt, dass die Seite nicht geladen werden kann und wenn man auf einen Butten drückt, kommt ne Error Meldung. Ich hab auch im Quellcode nicht gesehen, wo man da eine Internet-Adresse eintippen könnte...

Kommentar von ibrahim cakir am 03.09.2007 um 10:44

Hallo ActiveVB,

Dieses tool funktioniert.

Ich habe gleiche probleme.
Wie kann ich aus der aktuellen internet seite Elemente auslesen und einfügen
ich versuche es schon lange zeit, aber habe nicht geschäft.

Können Sie mir hilfe.

Mit ferundlischen Gruße.

Kommentar von Sezz2000 am 25.08.2007 um 16:03

Hier nochmal, aber diesmal nur der Code und mir der Hoffnung, dass die Zeilenumbrüche nun passen ;-)


WebBrowser1.Navigate ("www.google.com")

WebBrowser1.Document.All("Q").SetAttribute("value", "Who is John Galt")

WebBrowser1.Document.Forms(0).InvokeMember("submit")

Kommentar von Sezz2000 am 25.08.2007 um 15:23

So funktioniert die Übergabe mit Visual Basic 2005 mit dem Beispiel eine automatsichen Google Suche:

'zu www.google.com navigieren
WebBrowser1.Navigate ("www.google.com")

'Das Google Such Feld "Q" mit "Who is John Galt" füllen Browser.WebBrowser1.Document.All("Q").SetAttribute("value", "Who is John Galt")

'und dann abschicken Browser.WebBrowser1.Document.Forms(0).InvokeMember("submit")

Kommentar von Michael am 04.05.2007 um 15:24

Wie kommst du auf das "X"?

Versuch's mal damit... lass wenn VB sich an den eckigen klammern stört, versuch's mal ohne...

wbrWebBrowser.Document.Forms(0).a_bestellen[].Value = txtName.Text


Gruß
Michael

Kommentar von ZimTis am 04.05.2007 um 14:52

<input type='text' name='a_bestellen[]' maxlength='8' size='9' value="0">
is der HTML-Code

Private Sub cmdFill_Click()
Dim x As String


x = Label1.Caption

wbrWebBrowser.Document.Forms(0).x.Value = txtName.Text

End Sub

(Label1.caption = "a_bestellen[]")

Aber er gibt mir immer den
Laufzeitfehler 438
Objekt unterstütz die Eigenschaft oder Methode nicht

Was mache ich falsch.

Kommentar von Curzon am 19.03.2007 um 16:23

HI ALL.
Suche heute schon den ganzen tag nach dem Code was da oben steht aber für Visual basic 2005 .NET
Wer kann mir helfen ?

Kommentar von DD2006 am 18.11.2006 um 09:10

Hi,
ich habe gesehen das schon nach Hyperlinks gefragt wurde...aber keiner hat geantwortet...könnte das bitte nochmal einer erklären!

Danke schonmal DD2006

Kommentar von Gordon am 30.09.2006 um 02:41

Wie kan ich den inputnamen vriable machen. hab schon alles ausprobiert hab aber nichts hinbekommen.

bitte helfen

Kommentar von Bartman am 07.07.2006 um 15:35

das ist der htmlcode der formulars

<td class="form">An:</td>
<td class="note"><input type="text" size="12" maxlength="12" name="an" value=""><br/>Benutzername des Empfängers</td>
</tr>
<tr>
<td class="form">Betreff:</td>
<td class="note"><input type="text" size="30" name="subject" value="" maxlength="60"></td>

</tr>
<tr>
<td class="form">Nachricht:</td>
<td><textarea name="nachricht" style="width:380px;height:200px"></textarea></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" value="Abschicken"></td>

</tr>

bis her hatte ich es auf diese weise probiert:

With wbrWebBrowser
.Document.Forms(0).an.Value = txtName.Text
.Document.Forms(0).subject.Value = txtbetreff.Text
.Document.Forms(0).nachricht.Value = txtmsg.Text
End With

-
ich bekomme folgende fehlermeldung:
Runtime Error '438'
Object doesn't support this property or methode

Kommentar von McDuo am 01.07.2006 um 08:52

Hi darky,

vieleicht liegt es an den vergebenen Nr ?

Was bedeuten die Nummern eigendlich ?

Mal komme ich mit 0 weiter, ein anderes mal mit ner 1

Hängt es davon ab wo sich die Eingaben befinden ?

Biba McDuo

Kommentar von darky am 30.06.2006 um 12:56

also bei mir geht die sache mit dem radiobutton net

mein code sieht so aus

browser.Document.frames(1).Document.Forms(0).Order(3).Click

order is der name des radiobuttons

Kommentar von Sarah am 07.06.2006 um 17:15

Wie mache ich die Klick-Geräusche weg ohne dass ich das auf meinem Betriebssystem selber ändern muss (es soll für alle Anwender meines kleinen Tools nicht zu hören sein). Ich verwende nämlich den WebBrowser versteckt und man hört immer was, wenn es auf Submit "klickt". :D

Kommentar von InVaDeR am 06.06.2006 um 14:11

hi,

hängt von der Seite ab, vielleicht erwischt du einfach den falschen Frame bzw. Index. Auf welcher Seite willst du denn etwas ausfüllen lassen ? Könntest sie ja mal posten, sonst Mail an TheInvader[at]gmx[dot]net

cya

Kommentar von am 05.06.2006 um 19:06

hi, also ich bin auch am verzweifeln. es funzt wunderbar,
aber auf frameseiten bekomm ich das nicht hin, auch nicht mit den unten bennaten tips.

vielleicht hat jemand mal nen link, wo das evtl. naeher beschrieben wird, oder kann mal direkt den code posten oder mir ne mail mit ner lösung schrein´ben.


riskis@gmx.de

gruss

Kommentar von McDuo am 25.04.2006 um 21:23

Hallo zusammen,

mittlerweile habe ich mir einen Scanner gebaut welcher den Quelltxt nach den Inputfeldern durchsucht.
Wollte eigendlich somit die entsprechende Form(nr) feststellen.
Doch leider bin ich mir nicht genau sicher welche inputfelder eigendlich mit gezählt werden sollen und welche nicht. Hat da jemand einen Tip?

Kommentar von Gerfried am 22.02.2006 um 16:20

Hallo zusammen.

Wie kann ich das aus Access heraus machen ( in VBA ) ?
Also Daten aus einem Textfeld automatisch in ein HTML Formular Feld eintragen per Klick auf Button.

Danke für jeden Hinweis

Kommentar von Breitwieser am 20.02.2006 um 15:28

Kann man das auch serverseitig durchführen ?

Kommentar von DesertEagle am 20.02.2006 um 07:04

So, ich raste jetzt dann aus mit den frames...
ich will nur ein einziges (aber genau dieses eine) textfeld mit meinem text anfüllen.
tollerweise ist die seite aus mehreren frames aufgebaut (verschachtelt)... gibt es eine möglichkeit (egal wie) herauszufinden wo mein steuerelement ist, also in welchem frame (index), bzw welcher reihenfolge nach werden die frames vom webbrowser indexiert!?

mfG Desert

Kommentar von McDuo am 18.01.2006 um 21:21

Möchte nochmal auf die Einlogautomatik zu eBay zurückkommen, da es meinem Problem recht nahe kommt.
Habe die Source in VB.net 2005 kopiert, jedoch funz es bei mir nicht. Bekomme folgende 3 Fehlermeldungen

"userid" ist kein Member...
"pass" ist kein Member...
"Submit" ist kein Member...

...von "System.Windows.Forms.HtmlElement"

hat da jemand eine Lösung oder überhaupt eine Formularbearbeitung in VB.net 2005

Kommentar von Jan am 05.01.2006 um 20:01

Hallo zusammen.
ich möchte mit vb5 den Text aus einem inline frame auslesen, d.h. was zwischen
<IFRAME src=".." </IFRAME>
steht. Der Text soll in eine Variable oder als Msgbox angezeigt werden.
Hat jemand ne Idee? Einen Namen hat der IFrame nicht...

Vielen Dank

Jan

Kommentar von am 21.11.2005 um 16:16

hmmm ja kann ich natürlich machen aber wundern tut es mich schon. Das Formular ist ja schon das selbe

Kommentar von InVaDeR am 21.11.2005 um 16:14

na denn ersetz meine adresse doch einfach durch die von dir gepostete ...

Kommentar von Liesenberg am 21.11.2005 um 15:57

Ja komisch, meine URL ist aber anders?!?!
Mit deiner funzt es bei meiner nicht

https://signin.ebay.de/ws/eBayISAPI.dll?SignIn&co_partnerId=2&pUserId=&siteid=77&pageType=&pa1=&i1=&bshowgif=&UsingSSL=&ru=http%3A%2F%2Fwww.ebay.de&pp=&pa2=&errmsg=&runame=&ruparams=&ruproduct=&sid=&favoritenav=&migrateVisitor=

Kommentar von InVaDeR am 21.11.2005 um 15:38

------------------------ 8< -----------------------

Private Sub Command1_Click()
On Error Resume Next

WebBrowser1.Document.Forms(1).userid.Value = "nick"
WebBrowser1.Document.Forms(1).pass.Value = "pw"
WebBrowser1.Document.Forms(1).Submit

End Sub

Private Sub form_load()
WebBrowser1.Navigate "http://signin.ebay.de/ws2/eBayISAPI.dll?SignIn&ssPageName=h:h:sin:DE&ru=http%3A//www.ebay.de"
End Sub

------------------------ 8< -----------------------

geht doch, oder nich ?

Kommentar von Liesenberg am 20.11.2005 um 18:25

Wieso spam, ich will mich einloggen ??

Kommentar von JPG am 20.11.2005 um 17:53

Das ist bei E-Bay möglicher weiße absicht um spammern das leben schwer zu machen ...

zu umgehen nur wenn man den code kennt - sry!

Kommentar von liesenberg am 20.11.2005 um 17:44

Frage.
Ich versuche die Logonprozedur bei Ebay zu automatisieren. Habe verucht den Button über seinen Index, Elemtnummer anzusprechen. Ohne Erfolg. es wird immer ein falscher Button gedrückt. Könnte mir mal jemand veraten wie ich das schreiben muss ?!

Danke

Kommentar von Olli am 29.04.2005 um 14:29

Das ist wenigstens mal eine konkete Aussage.
Gibt es denn eine andere Möglichkeit Dateien an ein PHP Dokument zu übergeben?

MfG
Olli

Kommentar von CIX88 am 28.04.2005 um 09:03

> wie kann ich den in ein Input Feld vom Typ 'file' schreiben?

garnicht

cix88

Kommentar von Olli am 25.04.2005 um 14:12

Hi,
wie kann ich den in ein Input Feld vom Typ 'file' schreiben?
.value funktioniert nicht. Hat jemand einen Tip?

MfG
Olli

Kommentar von Michael am 16.02.2005 um 08:05

UPS.... Fehlerteufel....

Korrektur zu den Frames:

.Document.Frames(Index).Document.Forms(Index).<Object>.<Action>

Gruß
Michael

Kommentar von Michael am 10.02.2005 um 14:42

Also, zu den Frames....

.Document.Frames(Index).Forms(Index).<Object>.<Action>

Radio Button:
.Document.Forms(Index).<RadiobuttonName(Index)>.Click

CheckBox:
.Document.Forms(Index).CheckboxName.Click


grüße Michael

Kommentar von Milo am 07.02.2005 um 11:59

Also ich habe auch nochmal ein frage...
Undzwar kann man das ja auch dafür benutzen, um sich auf einer Seite einzulogen, also sprich man klickt auf den Button und die Seite wird aufgerufen...
Wie kriege ich das aber genau hin, das wenn ich auf den Button klicke die Seite aufgerufen wird und man sofort eingeloggt ist ???

Verwende Microsoft Visual Studio.NET 2003

Für Hilfe wäre ich sehr dankbar, da ich von sowass keine große ahnung habe

Kommentar von TCM am 03.01.2005 um 20:41

OK, aber in VB.Net funktioniert das nicht. Als Anfänger habe ich nicht genug Erfahrung um das umzuschreiben. Kann mir jemand helfen?

Ich muss für eine Anmeldung an unserem WLAN DSL Portal täglich eine Anmeldung ausfüllen. Das will ich autmatisieren. Die Felder sind:
Name, Kennwort und ein Submit Button. Ich habe den Sourcecode schon stundenlang verbogen, aber es will nicht funktionieren.

Kommentar von worel am 24.12.2004 um 15:13

Wie kann ich bei einer combo-box einen wert auswählen?

Beispiel 2:

********************************************
<html><head><title> </title></head>
<body>

<select name="mycombo">
<option value = "a">Text 1
<option selected value = "b">Text 2
<option value = "c">Text 3

</select>

</body>
</html>
********************************************

Private Sub Webbrowser1_DownloadComplete()
AutoRedraw = True
xx = Webbrowser1.Document.All("mycombo").length 'how many options
Print xx
x = Webbrowser1.Document.All("mycombo").selectedindex 'which item selected?
Print x
Print 'setting an selected item
Webbrowser1.Document.All("mycombo").selectedindex = 2
Print: For r = 0 To xx - 1
x = Webbrowser1.Document.All("mycombo").Options(r).Selected = True 'is that item selected?
Print x
Next
Print: For r = 0 To xx - 1
x = Webbrowser1.Document.All("mycombo").Options(r).Value 'is that item selected?
Print x
Next
Print: For r = 0 To xx - 1
x = Webbrowser1.Document.All("mycombo").Options(r).Text 'what is the text of that item?
Print x
Next
End Sub

Kommentar von worel am 24.12.2004 um 14:20

> Von Nico am 04.11.2002 um 18:56
> wie kann ich bei einer combo-box einen wert auswählen?

so gehts:

Private Sub Webbrowser1_DownloadComplete()
x = Webbrowser1.Document.All.length: Print x
x = Webbrowser1.Document.All("mycombo").selectedIndex: Print x
Webbrowser1.Document.All("mycombo").selectedIndex = 1
End Sub

<html><head><title> </title></head>
<body>
<select name="mycombo">
<option value = "a">Text 1
<option value = "b">Text 2
<option value = "c">Text 3
</select>
</body>
</html>

Kommentar von id am 15.10.2004 um 17:11

gibt es auch eine möglichkeit das ganze in einer anderen )programmier/script)spache zu machen?
also in visual c++, java oder ....?

Kommentar von mathias am 07.10.2004 um 16:13

Hi,
Wie fühle ich Felder vom Type File aus? Im Internet steht dazu leider nichts weiter, oder ich finde es nicht...

Kommentar von InVaDeR am 26.07.2004 um 00:11

@ drhawk
wurde hier schon x mal besprochen, denn musst du einfach das element über den index ansprechen.

wies unten schon steht :

document.forms[0].elements[Nr].Click 'bei nem command button z.b.

Kommentar von drhawk am 25.07.2004 um 03:16

hmmm
und wenn die felder namen haben wie z.b.:
2c4d272e1ce8b314deab0b798118efbf-core ?

Kommentar von JPG am 04.04.2004 um 05:32

wie gehts das in vb.net?

Kommentar von Franz am 15.03.2004 um 02:08

hab schon was - es heisst ROBOFORM

roboform.com

das perfekte tool für alle passwortseiten etc.

Kommentar von Franz am 15.03.2004 um 01:13

ich würde gern folgendes Formular automatisiert ausfüllen lassen. irgend jemand eine Ahnung wie das geht - kann leider nicht programmieren oder so...

https://plug-inn.uibk.ac.at/login.php

für lösungen bin ich sehr sehr dankbar
----> eagle@vol.at

Kommentar von LIAN am 13.03.2004 um 10:23

ist ja ganz nett, nur was wenn das Formular in eiem Frame dargestellt wird, und man die Seite in dem Frame nicht direkt aufrufen kann ?!

Kommentar von Marcus am 05.03.2004 um 11:37

Hallo,

komme zwar aus dem Visual Foxpro Lager, das Problem dürfte aber das gleiche sein

Meine HTML Seite hat keine Form Tags.

als bekomm ich auch kein Form Objekt zurück

Also geht :
.Document.Forms(0).feld3.Value = txtDate.Text

bei mir schief

Hat jemand eine Idee, wie man das lösen kann?.
Ich bekomm keinen Zugriff auf die beiden Eingabefelder

Anbei der HTML Code

<TABLE width="50%" border=0>
<TBODY>
<TR>
<TD>
<CENTER> <BR><BR>
<TABLE width="100%" border=1>
<TBODY>
<TR>
<TD align=middle>
<TABLE width="100%" border=0>
<TBODY>
<TR>
<TD align=middle colSpan=2> </TD></TR>
<TR>
<TD align=right width="40%">Customer</TD>
<TD width="60%"><INPUT maxLength=10 size=16 name=BAPI1007-CUSTOMER></TD></TR>
<TR>
<TD align=right>Password</TD>
<TD><INPUT type=password maxLength=16 size=16 value=""
name=BAPIUID-PASSWORD></TD></TR>
<TR>
<TD align=middle colSpan=2> </TD></TR>
<TR id=copytext vAlign=top>
<TD align=middle width="50%"><INPUT type=submit value=" Login " name=~OkCode(LGIN)></TD>
<TD align=middle width="50%"><INPUT type=submit value="Change password" name=~OkCode(PASS) minlength="200">
</TD></TR>
<TR>

Kommentar von Eduard am 11.02.2004 um 11:04

Also der Beispiel ist natürlich klasse, aber da hab ich
ne kleines Problem.

Wen HTML Datei so aussieht:

<html>
<body>
<table >
<tr>
<td>
<input type="text" name="feld1"><br>
<input type="text" name="feld2"><br>
<input type="text" name="feld3"><br>
<textarea rows="10" cols="30" name="textfeld"></textarea><br>
<input type="submit" name="submit" value="Abschicken">
</td>
</tr>
</table>
</body>
</html>

Ich meine jetzt ohne <form> tags.
Kann ich dann trotzdem auf Felder zugreifen ?

Kommentar von InVaDeR am 23.12.2003 um 12:46

Da war ich auch immer hinterher, wie das funktioniert einen javascript zu aktivieren, thx @ Thorsten, funktioniert 1A :)

cya

Kommentar von Torsten am 19.12.2003 um 12:50

Für den JavaScript von NewGen folgender Hinweis:

WebBrowser1.Navigate "javascript:test()"

soll funktionieren. Vielleicht schreibst du ja ob es geklappt hat.

Kommentar von Torsten am 02.12.2003 um 15:58

Also wenn ihr ein Dokument in einem Frame ansprechen wollt dann geht das so:
browser.document.frames(0).document.forms[0].elements[0].value=var
(Der Hinweis kam vom Ersteller selbst.)
Hab aber auch noch ein Problem mit den Buttons. Hab einen Button namens "quotes", der sich aber nicht wie hier beschrieben mit .Click drücken läst. Auch forms(0).submit geht nicht, weil dann ein anderer gedrückt wird.

Kommentar von Dominic Markowski am 18.11.2003 um 18:16

Soweit klappt alles bei mir,
nur wenn ich jetzt eine anwendung habe bei der ich ein Formular in einem Bestimmten Frame öffnen will Klappts bei mir nicht!
Was kann man da machen?

Kommentar von Mathias am 16.11.2003 um 00:45

Hallo,

Das mit den Frames geht leider immer noch nicht, auch wenn hier schon manche eine Antwort gepostet haben. Kann mir das vielleicht noch einer bitte erklären? Ich habe sowas wie WebBrowser.Document.Frame(0).item(0).value = "test" ausprobiert, aber es ging immer nicht. Bitte um hilfe

Kommentar von Hellwar am 14.11.2003 um 14:48

Ich habe einige Textfelder in einem Formular die die Namen field[1], field[2], field[3], usw. tragen. Wenn ich das aber in vb eingeben steht dann Field [1] etc da. Und beim ausführen kommt dann natürlich eine Fehlermeldung.

schon mal danke für eure Hilfe
Vielleicht kann mir jemand helfen da weiter unten auch schon mal nachgefragt wurde

Kommentar von NewGen am 13.11.2003 um 23:21

Browser.Document.Forms(0).submit

das ist schon ok, aber nur wenn die form im html auch einen sinn macht. wenn da z.b. nur steht: form name="login" kann ich nicht einfach submit aufrufen.

in meinem beispiel geht alles über den javascript login()

ABER WIE KANN ICH DIESEN SCRIPT AUFRUFEN??

Kommentar von Michael am 22.10.2003 um 18:46

Submitbutton ohne namen? kein problen:

Browser.Document.Forms(0).submit

Kommentar von frajar am 13.08.2003 um 15:25

Ein Hinweis für alle, die Webseiten automatisieren wollen - Es gibt bereits ein Shareware-Produkt (SiteWalker), daß dies alles kann:
Automatisierte Navigationen aller HTML-Elemente (Button, Links usw). Automatisches Ausfüllen von Formularen und das Auslesen von Textinformationen aus Webseiten zum Speichern nach Excel oder in Datenbanken. Und das Beste: Man surft, wie in einem normalen Browser; alle angeklickten Elemente auf den Webseiten werden in sog. NavigationTasks erfaßt und können jederzeit abgespielt werden. Wen es interessiert, sieht einfach mal unter www.sitewalker.de nach.

Kommentar von Uli am 31.07.2003 um 15:19

hi hab ne frage kann man mit vb auf einer internetseite einen bestimmten link automatisch klicken lassen.


? Hat jmd ne Lösung zum Problem "Was passiert wenn der Submit Button keinen Namen hat? Wie soll man auf diesen Button zugreifen?"

Danke im Voraus...

Kommentar von fun2003 am 30.07.2003 um 14:13

bei mir funzt das nicht!
es steht immer seite konnte nicht angezeigt werden.

könnt ihr mir helfen

Kommentar von Christian am 10.06.2003 um 22:19

Für alle die's interessiert den Textinhalt aus dem Browser zu kopieren:
brwWebBrowser.Document.documentelement.innertext

Kommentar von Christian am 29.05.2003 um 19:33

Danke für den Tip, Funktioniert soweit alles prima, aber eine kleine Hürde gibt es bei mir noch:
Ich möchte bei eBay automatisch die Bewertung ausfüllen und muß dazu wissen, um welchen eBayer es sich handelt. Die Seite über das iNet Steuerelement auszulesen geht nicht. Kann ich irgendwie automatisch den gesamten Inhalt des Webbrowser Steuerelements markieren und in die Zwischenablage kopieren? Oder kann ich den Inhalt irgendwie anders in eine Datei speichern?

Kommentar von Lutz am 01.04.2003 um 20:39

Sorry wegen des codes. Hab nicht dran gedacht das er ihn in die Seite einbaut.

Also um es anders darzustellen.
Auf der Seite wo ich das Formblat ausfüllen möchte gibt es kein Submit Button mit einem Namen.
Es steht nur value ="Abschicken" dann die src=".......but_start.gif" und type="image"

Was soll ich machen damit er auf diesen Button "Klickt"

Danke an alle

Kommentar von Lutz am 01.04.2003 um 20:24

Hi. Also das Prog geht soweit. Danke nochmals. Das Formblatt wird ausgefüllt. Allerdings hat mein Submit Button keinen Namen.
Hier ein Auszug des Codes:

<td align="right"><input type="image" value="Abschicken" src="/euroexpress/trackandtrace/tto2000/art/de/but_start.gif" alt="Start" border="0"></input></td>

Wie kann ich jetzt meinem Prog sagen er soll diesen Button drücken oder den value senden.

Danke an alle!!!

Kommentar von Sebastian Wassenberg am 21.02.2003 um 10:19

Hallo zusammen,
habe mein Problem gelöst:
document.forms[0].elements[0].value=var
Submit Button genauso:
document.forms[0].elements[Nr].Click

MfG
Sebastian

Kommentar von Sebastian Wassenberg am 19.02.2003 um 18:27

Hallo zusammen,
Dieser Tip hat mir bei meinem Projekt sehr geholfen, Danke!
Aber jetzt habe ich leider eine Input-box desen Name 80243EC8 ist, wenn ich den Code in VB eingebe bekomme ich einem Syntaxfehler. Können Sie mir da helfen?

Viele Grüße

Sebastian Wassenberg

Kommentar von Invader am 17.02.2003 um 17:16

Private Sub cmdSend_Click()
On Error Resume Next
wbrWebBrowser.Document.Forms(1).submit.Click
End Sub

so wirds gehen

mfg

Kommentar von Dominic Markowski am 15.02.2003 um 13:27

Ich wollt das Programm dafür nutzen um mich bei eBay automatisch anmelden zu können, das übertragen in die formulare hat funktioniert, aber das ausführen des Buttens nicht warum?
Private Sub cmdSend_Click()
wbrWebBrowser.Document.Forms(1).submit.Click
End Sub
Das ist mein Code den ich benutze, bei den feldern Klappt der!

Kommentar von Invader am 17.01.2003 um 15:26

@EVD du solltest vielleicht mal .text überall dranhängen , und du solltest drauf achten das die form die du ausfüllen sollst, auch die erste <form> ist.

Kommentar von MagicT am 08.01.2003 um 18:48

Achtung ... lasst Euch nicht beirren es funzt nur mit .html oder .htm seiten sobald ne .php oder wie auch immer angesteuert wird funzt das ganze nicht weil MS nicht damit klarkommt.

Kommentar von EvD am 31.12.2002 um 12:16

also ich kriegs ums verrecken nicht hin

ich hab jetzt folgenden code:

With WebBrowser1
.Document.Forms(0).vorname.Value = txtVorname
.Document.Forms(0).name.Value = txtNachname
.Document.Forms(0).strasse.Value = txtStrasse
.Document.Forms(0).plz.Value = txtPostleitzahl
.Document.Forms(0).stadt.Value = txtOrt
.Document.Forms(0).land.Value = txtLand
.Document.Forms(0).email.Value = txtEmail


End With

aber bekomm egal wie ichs anstell:

Error 91 Object oder With Varible....

was mache ich falsch?

Kommentar von Marco am 03.12.2002 um 09:48

Hat jemand einen Tipp, wie ich eine Inputbox vom Typ "file" füllen kann ?

Kommentar von Jens am 02.12.2002 um 23:16

Hi!
Ich habe ein Problem. Was muss ich ändern, wenn auf der HTML Seite dem "Submit-Button" kein Name zugeordnet ist?
THX and CyA

Kommentar von Bernd am 30.11.2002 um 13:14

Wie kann ich das auszufüllende Feld dynamisch übernehmen? Wenn ich beim Aufruf der Methode als FELD eine Variable einsetzte, dann krieg ich nenn Fehler!

With wbrWebBrowser
.Document.Forms(0).FELD.Value =
txtName.Text

Übrigens, das mit dem Warten, bis die Seite geladen wurde müsste so gehen:

While wbrWebBrowser.Busy = True
'Keine Aktion
endwhile

Kommentar von BigFab am 20.11.2002 um 17:40

Ich habe einige Textfelder in einem Formular die die Namen data[1], data[2], data[3], usw. tragen. Wenn ich das aber in vb eingeben steht dann Data [1] etc da. Und beim ausführen kommt dann natürlich eine Fehlermeldung.

schon mal danke für eure Hilfe

Greetz,
BigFab

Kommentar von Nico am 04.11.2002 um 18:56

hallo

wie kann ich bei einer combo-box einen wert auswählen?
Und wie kann ich bei einem Fileupload-Steuerelement die Textbox mit einem Wert füllen ( .Value = ... -> geht nicht )

Gruss Nico

Kommentar von Martin Bachmann am 17.10.2002 um 21:43

Dieser Tip funktioniert wirklich gut! aber um auf hyperlinks zu klicken oder ein javascript inerhalb der seite auszuführen geht nicht! kann mann das auch irgendwie machen? könntet ihr mir eine lösung für das problem schicken?
Vielen Dank
Martin



PS: Eure Seite ist wirklich spitze!!!

Kommentar von Schaller am 03.09.2002 um 10:45

Wenn ich den Send_Click ausführen lasse, bekomme ich die Meldung "Objektvariable nicht festgelegt".
Was muß ich tun????

Kommentar von B2K1 am 16.08.2002 um 23:35

Ich hab das Problem mit den Rationbuttons ( Optionbuttons ) gelöst.
Hier ein Beispiel:
wb1.Document.Forms(0).R1(1).Click
Man muss indexzahlen vor die Buttons setzen dann klapts auch mit der Nachbarn :-)

Kommentar von MaTTEvIL am 16.08.2002 um 23:08

Wie aktiviere ich ein Optionbutton ??
Hab es wie folgt versuch aber es kommt die bekannte "object blablabla..."
wb1.Document.Forms(0).Ration1.Value = "Value2"
wb1.Document.Forms(0).R1.click
wb1.Document.Forms(0).R1.Value.click
Bin ratlos
Cya MaTTEvIL

Kommentar von triton am 06.08.2002 um 18:49

Also, wenn man checkboxes hat, einfach den Befehl click anstatt value nehmen...
für Frames, mom, mal eben schauen...
parent.frames[1].document.forms[0].elements[0].value = "Stefan"
würde z.B. gehen -.-
achso, wenn der Submit-Button keinen Namen hat, ist es auch egal, da der sowieso nicht "angeklickt" wird, sondern halt per Browser das Submit ausgeführt wird... ist übrigens alles aus JavaScript übernommen (siehe http://www.netzwelt.com/selfhtml/javascript/objekte/frames.htm )
Triton

Kommentar von 1111 am 03.07.2002 um 20:25

das ist der test

Kommentar von 1111 am 03.07.2002 um 20:24

das ist der test

Kommentar von txtname am 03.07.2002 um 20:21

das ist der test

Kommentar von txtname am 03.07.2002 um 20:11

das ist der test

Kommentar von txtname am 03.07.2002 um 20:10

das ist der test

Kommentar von Udo am 20.03.2002 um 16:28

Hmm..Ich kann die ausgewählte Webseite anzeigen lassen, aber wenn ich auf "Übertragen" klicke, dann bekomme ich in der Zeile [...]field1.value =txtName.text einen Laufzeitfehler"Objekt unterstützt diese Eigenschaft oder Methode nicht".
Fehler mir die DLL?Hab keine zusätzlich kopiert? Oder gehts nur bei lokalen Webseiten?
Danke im Voraus,
Udo

Kommentar von casper am 13.02.2002 um 17:49

ich hätte die selbe frage wie Hellwar, bzw: wie kann ich das programm zB ne halbe sec ruhen lassen? (eben nicht mit do-loop weil er in der zeit nicht die site lädt.)
mfg casper

Kommentar von Cruel-Anxiety am 18.01.2002 um 19:11

Öhm sorry, meinte natürlich Marcs Tip... wie dem auch sei... weiß jemand Rat :) ?

Kommentar von Cruel-Anxiety am 18.01.2002 um 19:10

Auch mich würde es sehr interessieren, wie man Formulare in einem Frame ausfüllen kann - der Tip von Johannes ist leider falsch :(
cya

Kommentar von Johannes am 08.09.2001 um 16:07

Bei mir funzt das nicht,
jedesmal der Fehler
"Objektvariable oder With-Blockvariable nicht festgelegt!"
Kann mir jemand helfen?

Kommentar von Marvin am 20.08.2001 um 08:18

Ich hab das Problem, dass ein Formular den Namen "file-01" hat. das akzeptiert VB aber nicht ("Erwartet: Ausdruck"). Wie muss ich das schreiben? Danke schonmal, ist sehr wichtig!!

Kommentar von Hellwar am 08.08.2001 um 14:06

Wie kann ich abfragen
ob die seite Komplett geladen ist wie lautet der befehl in VB
MFG
Hellwar

Kommentar von Bernd Sommer am 22.07.2001 um 17:19

Wie kann man eine checkbox auswählen/bestätigen??
Wie kann ich eine Optionsfeld auswählen/bestätigen??
Gruss Bernd

Kommentar von Marc am 11.07.2001 um 18:18

Hi, Thomas!
Wenn du Steuerelemente in den Frames ansteuern willst, musst du sicher nur den Namen des jeweiligen Frames dazuschreiben, also z.B. wbrWebbrowser.Document.NamedesFrames.Forms(0).text1
Ich hoffe, dass ich helfen konnte
The Real MC

Kommentar von Thomas am 03.06.2001 um 14:20

Kann man über das wbrWebbrowser-Objekt auch auf Formulare zugreifen, die sich inerhalb von Frames einer Seite befinden?

Kommentar von Tim am 11.05.2001 um 10:46

Wie heisst der Befehl, damit das Programm erst anfängt auszufüllen, wenn die seite fertig geladen ist?

Kommentar von Newbie0312 am 13.04.2001 um 17:51

Hi Leutz....
Wenn die Errormeldung 'Objektblablabla' kommt dann liegt es daran das das dokument noch nicht geladen wurde (seite nicht vollständig geladen)
MFG
Newbie

Kommentar von Thomas am 01.03.2001 um 12:10

ich habe das proggi an meine Webseite angepasst,aber wenn ich Send_Click drücke, bekomme ich die Meldung "laufzeitfehler 91 oder 494 Objektvariable nicht festgelegt".
Hilfe,Hilfe,Hilfe

Kommentar von cyberpuma am 11.02.2001 um 16:33

hi leute
wie kann ich ein optionsfeld auswählen??
und wie kann ich eine checkbox auswählen??
mfg
Michi

Kommentar von Tom Kericht am 29.01.2001 um 20:59

Hi Thomas, Du brauchst mindestens den IE5, sonst gehts nicht.
Tom

Kommentar von Thomas am 29.01.2001 um 20:26

Wenn ich den Send_Click ausführen lasse, bekomme ich die Meldung "Objektvariable nicht festgelegt".
Was muß ich tun????

Kommentar von Martin am 08.01.2001 um 10:42

Danke erstmal für deinen Tip.
Gibt es denn auch eine Möglichkeit, dass man das Ganze nicht über wbrWebbrowser macht, sondern über die Inet Control?

Kommentar von sandmann am 23.12.2000 um 14:23

Wie kann man eine checkbox auswählen/bestätigen??
Wie kann ich eine Optionsfeld auswählen/bestätigen??
Bitte hilf mir!!

Kommentar von Gnorax am 22.12.2000 um 22:30

Wie kann ich mit bestimmen zu welcher site das ganze geschickt werden soll?

Kommentar von Sven am 20.12.2000 um 19:39

Ich wollte mal fragen was ich machen muss wenn ich ein Formular abschicken will aber der Submit-Button keinen Namen hat?
Danke im Voraus
Sven