Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Frame
BildScreenshot zu Frame Frame-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema WebBrowser
BildScreenshot zu WebBrowser WebBrowser-Seite mit Beispielarbeitsmappe aufrufen

VBA - Webabfrage im Frameset

Betrifft: VBA - Webabfrage im Frameset von: Toxma
Geschrieben am: 12.03.2008 17:00:14

Hallo,

kann jemand helfen oder hat schon Erfahrung in Sachen Webabfrage bei Framesets?
Ich habe eine Website, welche mit Framesets aufgebaut ist und da funktioniert es leider nicht. Oder geht es da überhaupt nicht?

Danke T.

  

Betrifft: AW: VBA - Webabfrage im Frameset von: MichaV
Geschrieben am: 12.03.2008 18:41:00

Hallo,

schau Dir den Quellcode der Frameset-Seite an, dann siehst Du die Adressen der Seiten, die in den Frames angezeigt werden.

Beispiel diese Forumsseite: Der Quellcode lautet


</head>
<frameset border="0" framespacing="0" frameborder="0" rows="126,*">

   <frame src="htp://www.herber.de/forum/top.html" name="top">
   <frameset cols="*,1010,*">
      <frame>
      <frame src="htp://www.herber.de/forum/body.html" name="content">
      <frame>
   </frameset>
</frameset>
</html>



..also wird im oberen Teil https://www.herber.de/forum/top.html angezeigt, im unteren Teil https://www.herber.de/forum/body.html. Diese Seiten kannst Du mit der Web-Abfrage abfragen.

Oder zeig mal den Link zur Seite, dann können wir das für Dich machen.

Gruß- Micha

PS: Rückmeldung wäre nett.


  

Betrifft: AW: VBA - Webabfrage im Frameset von: Torge
Geschrieben am: 12.03.2008 21:13:18

Hallo Micha,

sieht schon super aus. Hab Dir mal mein Muster hochgeladen.
Ist in der Datei alles noch einmal beschrieben. Möchte gern nach dem Login aus der danach erscheinenden Seite die beiden Werte auslesen und nach Excel übertragen. Bei mir klappt es leider nicht. Hab das auch so probiert, oder zumindest so ähnlich wie Du beschrieben hast aber nix.
https://www.herber.de/bbs/user/50696.xls
Danke schon mal.

Gr. T.


  

Betrifft: AW: VBA - Webabfrage im Frameset von: MichaV
Geschrieben am: 13.03.2008 21:12:07

Hallo,

mit einer Webabfrage kannst Du nicht auf Seiten zugreifen, auf denen Du Dich vorher einloggen musst.

Du kannst Dich aber mit dem Webbrowser- Objekt einloggen und dann den Quelltext durchstöbern. Das geht z.B. so:



Dim i As Integer
Dim l As Integer
Dim strInhalte() As String

'Login- Seite aufrufen.
WebBrowser1.Navigate "hxxp://www.eigenheim-finanz-service.de/web_a/script/welcome.php"
Do: DoEvents: Loop While WebBrowser1.Busy

'Einloggen
WebBrowser1.Document.forms("loginform").elements("username").Value = "a"
WebBrowser1.Document.forms("loginform").elements("userpw").Value = "a"
WebBrowser1.Document.forms("loginform").submit
Do: DoEvents: Loop While WebBrowser1.Busy

'Anzahl der <TD>- Tags ermitteln
l = WebBrowser1.Document.all.tags("TD").Length - 1
ReDim strInhalte(l)

'Alle Texte innerhalb der TD- Tags ermitteln
For i = 0 To l
    strInhalte(i) = i & " : " & WebBrowser1.Document.all.tags("TD")(i).innertext
Next

MsgBox "Inhalt aller Tabellenzellen im Dokument:" & vbCrLf & Join(strInhalte, vbCrLf)

Code eingefügt mit Syntaxhighlighter 4.14




Wenn Du nun weisst, daß Dein gesuchter Wert immer im 13. TD- Tag steht, kannst Du ihn ganz gezielt herausgreifen.

Gruß- Micha

PS: Rückmeldung wäre nett
PPS: http://www.activevb.de/tutorials/tut_browsertags/browsertags.html


  

Betrifft: kleiner Fehler von: MichaV
Geschrieben am: 13.03.2008 22:56:14

Hi,

mit einer Webabfrage kannst Du nicht auf Seiten zugreifen, auf denen Du Dich vorher einloggen musst

...ist Blödsinn, Webabfrage geht, wenn Du Dich über den Excel- Browser einloggst. Danke für den Hinweis :o)

Gruß- Micha


 

Beiträge aus den Excel-Beispielen zum Thema "VBA - Webabfrage im Frameset"