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 CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen

Internet Seiten per VBA öffnen


Betrifft: Internet Seiten per VBA öffnen von: Maria
Geschrieben am: 04.01.2018 21:10:06

Hallo,
ich habe folgendes Problem, ich möchte eine Auswahl von Begriffen automatisch per VBA im internet explorer öffnen.
Ich habe mich an zwei codes aus dem Internet versucht aber bekomme es einfach nicht hin.
Besser wäre es noch wenn der Code die Komplette Liste auf der Website durchgeht und mir die _ Seiten öffnet wo mindestens ein Eintrag vorhanden ist, dies ist aber glaube ich zu kompliziert oder?


Sub BoersenZeitung()

Dim objIE As Object
Set objIE = CreateObject("Internetexplorer.Application")
Dim Unternehmen As String
Set Unternehmen = Selection


With objIE
    .Visible = True
    .Navigate2 "https://www.boersen-zeitung.de/index.php?li=310&subm=suche&bzpro_suche= _
Unternehmen=1%20Woche"
    Do While .Busy And .readyState <> 4
      DoEvents
    Loop

End With


'Set objIE = Nothing
End Sub

Ich habe gedacht ich könnte in dem Link einfach eine Variable, die ich Unternehmen genannt habe, einfügen und diese als Selection deklarieren.

Das Foto ist ein Beispiel, da kommen aber noch mehr Unternehmen zu und es wird auch hin und wieder mal eines entfernt oder hinzugefügt



Vielen Lieben Dank und ganz liebe Grüße
Maria

  

Betrifft: AW: Internet Seiten per VBA öffnen von: mumpel
Geschrieben am: 04.01.2018 23:34:33

Hallo!

Gibt es eine Fehlermeldung?

Gruß, René


  

Betrifft: Nachtrag von: mumpel
Geschrieben am: 04.01.2018 23:40:55

Da "Unternehmen" eine Variable ist muss sie auch so übergeben werden.

Sub BoersenZeitung()

Dim objIE       As Object

Set objIE = CreateObject("Internetexplorer.Application")


With objIE
    .Visible = True
    .Navigate2 "https://www.boersen-zeitung.de/index.php?" & _
               "li=310&subm=suche&bzpro_suche=" & Selection & _
               "=1%20Woche"
    Do While .Busy And .readyState <> 4
       DoEvents
    Loop

End With


End Sub


VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0




  

Betrifft: Was ist Dein Ziel? von: Zwenn
Geschrieben am: 05.01.2018 11:53:28

Hallo Maria,

wenn ich es richtig verstanden habe, möchtest Du alle Suchtreffer am liebsten direkt als eigene Seiten öffnen. Ist das richtig? Falls ja, ist das nach meiner Auffassung nicht sehr zielführend.

Allein für die 6 Unternehmen, die Du in Deinem Beispiel angegeben hast, gibt es Stand heute 11:30 Uhr für den Zeitraum 1 Woche in Summe 78 Treffer. Nach Ablauf eines entsprechenden Makros hättest Du also 78 Internet Explorer Instanzen geöffnet und es sollen noch mehr Unternehmen hinzu kommen. (Nimmt man statt Mercedes die echte Firmenbezeichnung Daimler, werden es nochmal mindestens 17 Artikel mehr.) Wie willst Du die sinnvoll abarbeiten? Wobei ich natürlich nicht weiß, was Du überhaupt mit den Berichten vor hast.

Weiterhin ist der Link in Deinem Codeausschnitt falsch. Wenn man ihn mit dem Screenshot vergleicht, fehlt das Wort Zeitraum vor dem letzten Gleichheitszeichen. Um solche Flüchtigkeitsfehler zu vermeiden, habe ich es mir angewöhnt, solche Konstrukte zu kopieren und da einzufügen, wo sie benötigt werden. Ob es URLs oder Nicknames sind. So sind Tippfehler ausgeschlossen. URLs kann man nach dem Einfügen immer noch bearbeiten, falls notwendig. Z.B. um einen Teil mit Variablen dynamisch zu machen.

Ganz davon ab, funktioniert so ein Link aber auch nicht, wenn ich ihn 1 zu 1 aus Deinem Screenshot abschreibe. Dann erhalte ich gar keine Suchtreffer, sondern im Suchfeld steht bmw_zeitraum=1 Woche und für Zeitraum bleibt die Vorgabe 1 Jahr eingetragen. Wenn man die gewünschten Daten manuell in die Suchfelder eingibt, bekommt man zwar das gewünschte Ergebnis, aber als URL steht nur https://www.boersen-zeitung.de/index.php?li=310&subm=suche im Browser. Woher hast Du also den Aufbau Deiner URLs und funktionieren die bei Dir wirklich so? Ich habe es nur manuell getestet, nicht als VBA Makro. Aus einer Excelzelle heraus dürfte ein anklickbarer Link so aber dann auch nicht funktionieren.

Also am wichtigsten wäre erstmal zu wissen, ob Du die ganzen Suchtreffer wirklich direkt geöffnet haben willst. Alternativ könntest Du auch erstmal alle Überschriften und Direktlinks auslesen und dann bei Durchsicht entscheiden, welche Berichte Du Dir wirklich ansehen musst. Oder Du wählst ein noch anderes Vorgehen. Ich denke dabei wie gesagt vor allem daran, dass Du mit dem Ergebnis ja irgend etwas machen willst. Wenn die ganzen Teile einfach nur geöffnet werden, kannst Du sie nur sofort manuell abarbeiten oder unbesehen einfach wieder schließen.

Ob so ein Makro erstellbar ist, habe ich bisher nicht geprüft. Dies sind nur meine ersten Gedanken zu Deiner Anfrage.

Viele Grüße,

Zwenn


  

Betrifft: AW: Was ist Dein Ziel? von: Hajo_Zi
Geschrieben am: 06.01.2018 06:17:38

Hallo Zwenn,

lasse den Fragesteller entscheiden ob offen.
Es ist Heute nicht mehr üblich eine Rückmeldung zu geben und so ist der Beitrag über 6 Tage offen.

GrußformelHomepage

Ich gebe keinen Dank für eine Rückmeldung, da ich durch solche Beiträge nicht meine Beitragszahl erhöhen muss.
Also ich schreibe keine Beiträge mit dem Betreff "Gerne u. Danke für die Rückmeldung....."
Rückmeldung ist ja in der Heutigen Zeit nicht üblich und die wenigen die eine Rückmeldung geben,
mögen mir das verzeihen, das kein Danke für eine Rückmeldung kommt.

Beiträge von Werner, Luc, robert und folgende lese ich nicht.


Beiträge aus dem Excel-Forum zum Thema "Internet Seiten per VBA öffnen"