Live-Forum - Die aktuellen Beiträge
Datum
Titel
03.10.2025 22:18:19
03.10.2025 18:57:58
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Web page öffnen und nach Text durchsuchen

Web page öffnen und nach Text durchsuchen
05.07.2016 11:07:21
Hermann
Hallo zusammen,
ich habe eine Excel, in der mehrere Hundert Hyperlinks beinhaltet sind.
Nun such ich nach einem Macro, welches diese Links der Reihe nach öffnet und nach dem Begriff "Fahrrad:" sucht und mir anschließend die nächsten 30 Zeichen in meine Excel (am besten eine Zeile daneben) kopiert.
Leider wurde ich nach einem solchen bzw. einem ähnlichen Macro im Archiv nicht fündig.
Kann mir jemand weiterhelfen?
Beste Grüße
Hermann

Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
bitte testen
05.07.2016 17:21:37
Michael
Hi,
das geht z.B. so: https://www.herber.de/bbs/user/106776.xlsm
Das Makro gibt auf dem Blatt "Ausgabe" ALLE Treffer innerhalb jeder URL aus, d.h. auch solche, die möglicherweise innerhalb von HTML-Tags stehen.
Wenn der Server-Status 200 ist, war der Zugriff erfolgreich, falls nicht, konnte die Seite nicht gelesen werden.
Viel Spaß,
Michael

Anzeige
AW: bitte testen
05.07.2016 17:41:29
Hermann
Hallo Michael,
vielen Dank für deine Hilfe. Leider erscheint die Fehlermeldung "Fehler beim Kompilieren: Benutzerdefinierter Typ nicht definiert".
Weißt du was ich anpassen muss?
Gruß, Hermann

AW: bitte testen
05.07.2016 17:54:21
Michael
Hi,
in welcher Zeile? Ich habe die Datei nochmal heruntergeladen, bei mir geht sie.
Was hast Du gemacht? Das Makro in Deine Datei kopiert oder Deine Daten in "meine" Datei kopiert?
Gruß,
Michael
P.S.: hast Du am Ende einen Mac? Der wird schwerlich ein "MSXML2.XMLHTTP" haben.

Anzeige
AW: bitte testen
05.07.2016 18:57:31
Hermann
Hallo Michael,
dein Makro läuft reibungslos. Habe nun auf deine Excel aufgebaut, leider funktioniert es nicht wie gewünscht.
Es erscheint generell "Status 200" und nicht der gewünschte Suchbegriff.
Anbei meine Excel.
Vielen Dank für deine Unterstützung.
https://www.herber.de/bbs/user/106778.xlsm
Hermann

Anzeige
bitte Quelltext ansehen...
05.07.2016 19:18:01
Michael
Hi Hermann,
das ist doch ok, wenn "Status 200" erscheint.
Das Prinzip ist: weil die gesuchten Begriffe mehrfach in einer Website vorkommen können, schreibt das Makro erst Mal jede URL in "Ausgabe", gefolgt von so vielen Zeilen, wie eben Begriffe gefunden werden.
Wenn in der Seite KEINE Begriffe gefunden werden, kommt halt auch nix.
Auf die Art erhältst Du alle Infos, die Du brauchst:
a) wurde die Seite gefunden? Wenn ja: =200=ok
b) wird der Begriff gefunden? Wenn ja: so viele Zeilen wie Treffer; wenn nein: nächste URL
Sonst weißt Du hinterher doch nie, ob nur keine Sachen gefunden wurden oder ob die Seite nicht existiert.
So! Wenn Du jetzt mal einen Blick in den Quelltext der gewünschten Seiten wirfst, wirst Du feststellen, daß da nicht
Geschäftsführer
steht, sondern
geschäftsführer
Dann solltest Du auch nach dem unteren Begriff suchen. Bei der Ausgabe mit
Ausgabe.Range("B" & ausZ) = "'" & Mid(sResult, pLi + 23, 35)
erscheint noch das "er:", da kannste die 23 durch 26 ersetzen...
Schöne Grüße,
Michael

Anzeige
AW: bitte Quelltext ansehen...
05.07.2016 19:40:46
Hermann
vielen Dank!

AW: Web page öffnen und nach Text durchsuchen
05.07.2016 19:21:19
Hermann
@ Michael: habe die Lösung gefunden. Ich muss die Umlaute anders betrachten ;-)

dann sind wir uns ja einig... Gruß & erl. owT
05.07.2016 20:01:20
Michael

Anzeige
AW: dann sind wir uns ja einig... Gruß & erl. owT
05.07.2016 20:43:03
Hermann
Hallo Michael,
leider kommt relativ häufig die Meldung "Status : 403" - und somit nicht der gewünschte Output.
Da die Homepages auf die ich zugreife sehr ähnlich sind, glaube ich kaum, dass es daran liegen könnte.
Hast du eine Idee?
Grüße
Hermann

Server: Status-Codes
06.07.2016 13:23:11
Michael
Hallo Hermann,
die Status-Codes findest Du hier: http://de.wikipedia.org/wiki/HTTP-Statuscode
403 heißt "Zugriff nicht erlaubt", siehe dort...
Schöne Grüße,
Michael
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Webpages automatisiert durchsuchen und Text extrahieren


Schritt-für-Schritt-Anleitung

Um eine Internetseite nach einem Wort zu durchsuchen und die relevanten Informationen in Excel zu extrahieren, kannst du ein Makro verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und erstelle ein neues Arbeitsblatt.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu:

    • Rechtsklick auf "VBAProject (deineDatei.xlsx)".
    • Wähle "Einfügen" und dann "Modul".
  4. Kopiere und füge das folgende VBA-Skript ein:

    Sub WebDurchsuchen()
        Dim http As Object
        Dim url As String
        Dim searchTerm As String
        Dim result As String
        Dim outputRow As Integer
        Dim i As Integer
    
        searchTerm = "Fahrrad:"
        outputRow = 1
    
        For i = 1 To 100 ' maximal 100 Links
            url = Cells(i, 1).Value ' Links in Spalte A
            Set http = CreateObject("MSXML2.XMLHTTP")
            http.Open "GET", url, False
            http.send
    
            If http.Status = 200 Then
                result = http.responseText
                If InStr(result, searchTerm) > 0 Then
                    Cells(outputRow, 2).Value = Mid(result, InStr(result, searchTerm), 30) ' 30 Zeichen nach dem Suchbegriff
                    outputRow = outputRow + 1
                End If
            End If
        Next i
    End Sub
  5. Schließe den VBA-Editor und gehe zurück zu Excel.

  6. Gib in Spalte A die URLs ein, die du durchsuchen möchtest.

  7. Führe das Makro aus:

    • Drücke ALT + F8, wähle WebDurchsuchen und klicke auf "Ausführen".

Häufige Fehler und Lösungen

  • Fehler beim Kompilieren: Benutzerdefinierter Typ nicht definiert

    • Überprüfe, ob du die richtige Excel-Version verwendest. MSXML2.XMLHTTP ist nicht in allen Versionen verfügbar.
  • Status 403 - Zugriff nicht erlaubt

    • Dies kann passieren, wenn die Website den Zugriff auf ihre Ressourcen einschränkt. Stelle sicher, dass du die Erlaubnis hast, die komplette Webseite nach einem Wort zu durchsuchen.
  • Kein Suchbegriff gefunden

    • Überprüfe den Quelltext der Webseite. Möglicherweise ist der gesuchte Begriff nicht in der erwarteten Form vorhanden (z.B. Umlaute oder HTML-Kodierung).

Alternative Methoden

Wenn du keine VBA-Programmierung verwenden möchtest, kannst du folgende Methoden in Betracht ziehen:

  • Web Scraping Tools: Nutze Tools wie Import.io oder ParseHub, um Daten von Webseiten zu extrahieren, ohne manuell Makros zu erstellen.
  • Excel-Add-Ins: Einige Add-Ins ermöglichen das Durchsuchen von Webseiten direkt aus Excel heraus.

Praktische Beispiele

  1. Beispiel-URL-Liste: Stelle sicher, dass du eine Liste von Hyperlinks hast, die du in Spalte A einfügst.
  2. Suchbegriff anpassen: Ändere den searchTerm im Skript, um andere Begriffe zu suchen, wie beispielsweise „Fahrradteile“.
  3. Datenanalyse: Nach dem Ausführen des Makros kannst du die extrahierten Informationen analysieren oder weiterverarbeiten.

Tipps für Profis

  • Fehlermeldungen protokollieren: Füge Code hinzu, um Fehler beim Zugriff auf Webseiten zu protokollieren, damit du auf Probleme schnell reagieren kannst.
  • Mehrere Suchbegriffe: Erweitere das Makro, um mehrere Begriffe gleichzeitig zu durchsuchen, indem du eine Schleife über ein Array von Suchbegriffen machst.
  • Quelltext öffnen: Wenn du den Quelltext öffnen möchtest, kannst du das Ergebnis in einer Textdatei speichern, um es später zu analysieren.

FAQ: Häufige Fragen

1. Kann ich das Skript für andere Suchbegriffe anpassen?
Ja, ändere einfach den Wert von searchTerm im Skript, um nach anderen Begriffen zu suchen.

2. Funktioniert das Makro in allen Excel-Versionen?
Das Makro sollte in den meisten modernen Versionen von Excel funktionieren. Ältere Versionen oder Mac-Versionen könnten Einschränkungen bei MSXML haben.

3. Wie kann ich die Ausgabe anpassen?
Die Ausgabe erfolgt aktuell in Spalte B. Du kannst die Zielzelle im Code ändern, um die Daten an einen anderen Ort zu speichern.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige