Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

vba und Firefox

Forumthread: vba und Firefox

vba und Firefox
Günther
Hallo,
ich möchte eine Webseite öffnen, und ein bestimmtes Wort
suchen lassen und dieses dann markieren. Ist das möglich?
Die Seite öffnen kann ich. Diese wir in meinen Firefox angezeigt. Aber jetzt ?
Sub html_suche()
Dim wshshell As Object
Set wshshell = CreateObject("WScript.Shell")
wshshell.Run "http://www.autoscout24.de/modelle/audi/"
' Hier nach einem Wort suchen, und dieses markieren
' z.B. Audi A4
End Sub
Hat jemand einen Tipp
Besten Dank
G.Frost
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: vba und Firefox
21.07.2012 19:47:00
fcs
Hallo Günther,
probiere mal folgendes:
Die Wartezeit im Makro muss du anpassen an die Geschwindigkeit mit der bei dir die Webseite aufgebaut wird. günstiger ist es, wenn Firefox bereits geöfffnet ist bevor du das Makro startest.
Das Makro sendet nach der Warteseit die Tastatur-Befehle
Gruß
Franz
Sub html_suche()
Dim wshshell As Object, strSuch As String
Set wshshell = CreateObject("WScript.Shell")
wshshell.Run "http://www.autoscout24.de/modelle/audi/"
Application.Wait Now + TimeValue("00:00:05")
' Hier nach einem Wort suchen, und dieses markieren
strSuch = "Audi A4"
Application.SendKeys "^f", True 'Suchen-Dialogleiste in Firefox wird angezeigt
Application.SendKeys strSuch, True 'Suchtext im Dialog eingetragen
Application.SendKeys "%h" 'Hervorheben aller Fundstellen
End Sub

Anzeige
AW: vba und Firefox
23.07.2012 18:39:42
Günther
Hallo Franz,
besten Dank. Es hat funktioniert.
Gruß Günther
;
Anzeige

Infobox / Tutorial

Automatisierung von Firefox mit VBA in Excel


Schritt-für-Schritt-Anleitung

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)" > Einfügen > Modul.

  3. Kopiere den folgenden Code in das Modul:

    Sub html_suche()
       Dim wshshell As Object, strSuch As String
       Set wshshell = CreateObject("WScript.Shell")
       wshshell.Run "http://www.autoscout24.de/modelle/audi/"
       Application.Wait Now + TimeValue("00:00:05") ' Wartezeit anpassen
       strSuch = "Audi A4"
       Application.SendKeys "^f", True ' Suchen-Dialogleiste in Firefox wird angezeigt
       Application.SendKeys strSuch, True ' Suchtext im Dialog eingetragen
       Application.SendKeys "%h" ' Hervorheben aller Fundstellen
    End Sub
  4. Passe die Wartezeit an: Experimentiere mit der Zeitspanne in Application.Wait, um sicherzustellen, dass die Webseite vollständig geladen ist, bevor das Makro den Suchbefehl ausführt.

  5. Starte das Makro: Schließe den VBA-Editor und führe dein Makro über ALT + F8 aus.


Häufige Fehler und Lösungen

  • Problem: Firefox öffnet sich nicht.

    • Lösung: Stelle sicher, dass die URL korrekt ist und Firefox bereits geöffnet ist, bevor du das Makro startest.
  • Problem: Das Suchfeld erscheint nicht.

    • Lösung: Vergewissere dich, dass du die richtige Tastenkombination (^f für Strg + F) verwendest und dass der Fokus auf dem Firefox-Fenster liegt.
  • Problem: Der Suchtext wird nicht eingegeben.

    • Lösung: Überprüfe, ob die Wartezeit lang genug ist, damit die Webseite vollständig geladen werden kann.

Alternative Methoden

Wenn du mit VBA und Firefox arbeiten möchtest, aber eine andere Methode ausprobieren willst, kannst du auch folgende Ansätze in Betracht ziehen:

  • Selenium VBA: Verwende das Selenium-Framework, um Browser-Automatisierungen durchzuführen. Es ermöglicht dir, mit verschiedenen Browsern zu interagieren, einschließlich Firefox.
  • Power Query: Nutze Power Query, um Daten aus Webseiten zu extrahieren, ohne VBA zu verwenden.

Praktische Beispiele

Hier ist ein weiteres Beispiel, wie du einen Text in Firefox suchen kannst:

Sub firefox_suchen()
    Dim wshshell As Object
    Set wshshell = CreateObject("WScript.Shell")
    wshshell.Run "http://www.example.com"
    Application.Wait Now + TimeValue("00:00:10") ' 10 Sekunden warten
    Application.SendKeys "^f" ' Suchen im Firefox
    Application.SendKeys "Beispieltext" ' Suchbegriff eingeben
    Application.SendKeys "{ENTER}" ' Bestätigen
End Sub

Mit diesem Makro kannst du einen beliebigen Text auf einer Webseite suchen lassen.


Tipps für Profis

  • Benutze Variablen: Erstelle Variablen für häufig verwendete URLs oder Suchbegriffe, um deinen Code übersichtlicher zu gestalten.
  • Fehlerbehandlung: Implementiere Fehlerbehandlungsroutinen, um unerwartete Situationen abzufangen, z.B. wenn die Webseite nicht erreichbar ist.
  • Schreibe Kommentare: Dokumentiere deinen Code gut, damit du und andere ihn in Zukunft leichter nachvollziehen können.

FAQ: Häufige Fragen

1. Kann ich das Makro auch in anderen Excel-Versionen verwenden?
Ja, die oben beschriebenen Schritte sind in den meisten modernen Excel-Versionen anwendbar.

2. Funktioniert das auch mit anderen Browsern?
Das Makro ist speziell für Firefox und die Verwendung von WScript.Shell optimiert. Für andere Browser wie Chrome sind möglicherweise Anpassungen notwendig.

3. Gibt es eine Möglichkeit, die Wartezeit dynamisch anzupassen?
Ja, du kannst die Ladezeit dynamisch ermitteln, indem du Schleifen verwendest, die prüfen, ob die Webseite vollständig geladen ist.

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