Har problem med att fylla ett fällt pga att Visual Basic ändrar i själva kommandot. Här nedanför är kommandot jag försöker använda, där jag alltså försöker fylla ett fält som heter "user-name": Pinsamt. Skrev fältnamnet fel. Det var ett understräck, och jag var vääääldigt säker på att jag skrev rätt. Så kan de gå. :P Använde inte All utan getElementById("User-Name")Fylla webfält - Webbrowser.Document.All.?
Webbrowser.Document.All.User-Name.Value = MyUsername
Problemet är att VB tror att sträcket är ett minustecken och kommandot blir istället:
Webbrowser.Document.All.User -Name.Value = MyUsername
Det blir alltså ett mellanslag.
Jag har försökt med "-tecken och ()-tecken men inget verkar fungera.
Nån som vet hur jag ska göra?Sv: Fylla webfält - Webbrowser.Document.All.?
Sv: Fylla webfält - Webbrowser.Document.All.?
Webbrowser.Document.getElementById("User-Name").Value = MyUsername
Ette exemple som skickar en fråga på google:
Option Explicit
Private mGoogle As Boolean
Private Sub Form_Load()
WebBrowser1.Navigate "http://www.google.se"
End Sub
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Dim Doc As MSHTML.HTMLDocument
Set Doc = WebBrowser1.Document
If mGoogle Then
Else
Dim TextField As MSHTML.HTMLInputElement
Set TextField = Doc.getElementById("q")
TextField.Value = "pellesoft"
Dim SubmitButton As MSHTML.HTMLInputElement
Set SubmitButton = Doc.getElementById("btnG")
SubmitButton.Click
mGoogle = True
End If
End Sub
Lägg till en refterens till "Microsoft HTML Object Library" så får du tillgång till HTML objekten som jag använder i mitt exempel.
Du kan använda Variant eller objet. Men med "Microsoft HTML Object Library" får du intellisens.