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

Internet im Excel - Webbrowser in Userform

Forumthread: Internet im Excel - Webbrowser in Userform

Internet im Excel - Webbrowser in Userform
k
Ma was ganz anderes heut...
Habe für meine kleine Nichte eine Excelliste mit vielen "Kinderwebsite"-Addressen. Zudem habe in der Datei eine kleine Userform mit einer ComboBox, (wo die Link-Adressen aufgeführt werden) und den Hauptbereich mit dem Element WebBrower belegt.
Diese hat als Navigate - Eigenschaft dann entsprechend dem ComboBox-Eintrag die URL und zeigt diese dann an. Alles soweit prima.
Jetzt wollte ich fragen, gibt es die Möglichkeit auch eine Art "Bearbeitungszeile" reinzupacken ähnlich dem "Normalen" Brower mit Grundfunktionen wie Vorwärts, Rückwärts, Home, Drucken, Aktualisieren ?!
Wie kann ich verhindern, dass aufgrund der Betätigung eines Link auf eine angezeigten Homepage nun der "richtige" Browser sich öffnet ?! Es sollte wenn dann innerhalb des UF-Webbrowser verblieben werden ?! Max. dort mit Multipage/Registern oder so ?!
Geht das ?!
Gruß
Kay
Anzeige

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

Betreff
Benutzer
Anzeige
Ist das nicht ein bischen viel/abwegig für Excel ?
23.07.2009 16:09:00
NoNet
Hallo Kay,
Du willst Doch nicht etwa per Excel UF einen Browser nachbauen, oder ?
Du könntest alle angeklickten Links in einer Historie (auf einem separaten Tabellenblatt) speichern und auf diese Seiten dann per VOR / ZURÜCK - Button navigieren.
Ich persönlich würde jedoch davon Abstand nehmen, das mit Excel VBA zu lösen und stattdessen lieber einen "echten" Browser verwenden...
Dennoch viel Erfolg bei Deinem Vorhaben..
Gruß, NoNet
Anzeige
AW: Ist das nicht ein bischen viel/abwegig für Excel ?
23.07.2009 17:21:10
k
Hi...
danek für Deine Antwort. Ja, toll finde ich es auch nicht wirklich, aber der Wunsch meiner Schwester - mit dem Gadanken, eben nicht im Browser wild umher zu klicken, sondern nur innerhalb der Seiten zu bleiben, welche in der Excel stehen.
Habe auch gemerkt, dass nicht alle "clicks" in einen "neuen" Browser gehen, man schauen ob man diese Links einfach "leer" laufen lassen kann. In der Userform habe ich nun auch mit Deiner Anregung auf den ganzen "SchnickSchnack" verzichtet. Die Kleine soll einfach einen Link aufrufen können in Excel und sich die Kinderseite ansehen. Dann die nächste und so weiter. Hallo, sie ist 6 ;o) ...
Lasse es also einfach mit den einfachen Boardmitteln und dann ist gut...nur die Links die einen extern Browser starten wollen würde ich gern unterbinden - geht sowas ?!
Gruß
Kay
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Internet im Excel: Webbrowser in Userform


Schritt-für-Schritt-Anleitung

Um einen Webbrowser in einer Userform in Excel zu integrieren, kannst du die folgenden Schritte befolgen:

  1. Userform erstellen: Öffne den VBA-Editor (ALT + F11) und erstelle eine neue Userform.

  2. Webbrowser hinzufügen: Füge ein Webbrowser-Steuerelement hinzu. Dies kannst du unter "Toolbox" finden. Wenn die Toolbox nicht sichtbar ist, aktiviere sie über "Ansicht" > "Toolbox".

  3. ComboBox hinzufügen: Platziere eine ComboBox auf der Userform, in der du die URLs der Kinderwebsites speicherst.

  4. Code für die Navigation: Füge den folgenden Code in das Userform-Modul ein, um die Navigation zu steuern:

    Private Sub ComboBox1_Change()
       WebBrowser1.Navigate ComboBox1.Value
    End Sub
  5. Vorwärts und Rückwärts Navigation: Du kannst Buttons für die Vorwärts- und Rückwärtsnavigation hinzufügen. Verwende dazu den folgenden Code:

    Private Sub btnBack_Click()
       If WebBrowser1.CanGoBack Then
           WebBrowser1.GoBack
       End If
    End Sub
    
    Private Sub btnForward_Click()
       If WebBrowser1.CanGoForward Then
           WebBrowser1.GoForward
       End If
    End Sub
  6. Links im internen Browser öffnen: Um zu verhindern, dass Links in einem externen Browser geöffnet werden, kannst du den BeforeNavigate2-Ereigniscode hinzufügen:

    Private Sub WebBrowser1_BeforeNavigate2(ByVal pDisp As Object, URL As String, _
       Flags As Variant, TargetFrameName As Variant, Cancel As Boolean)
       If InStr(URL, "deine-erlaubte-seite.de") = 0 Then
           Cancel = True
       End If
    End Sub

Häufige Fehler und Lösungen

  1. Webbrowser-Steuerelement nicht verfügbar: Stelle sicher, dass du die Microsoft Internet Controls in den Verweisen aktiviert hast. Gehe zu "Extras" > "Verweise" im VBA-Editor.

  2. ComboBox bleibt leer: Überprüfe, ob du die URLs korrekt in die ComboBox eingefügt hast. Du kannst dies mit ComboBox1.AddItem "http://example.com" im Userform-Initialisierungscode tun.

  3. Links öffnen sich im externen Browser: Wenn die Links weiterhin im externen Browser geöffnet werden, stelle sicher, dass der BeforeNavigate2-Code korrekt implementiert ist.


Alternative Methoden

Eine alternative Methode wäre, die Links in einer Excel-Tabelle zu speichern und eine Schaltfläche zu verwenden, um die URL aus der Tabelle zu navigieren. Dies könnte so aussehen:

Private Sub btnOpenLink_Click()
    Dim link As String
    link = Cells(1, 1).Value ' Beispiel: Link aus Zelle A1
    WebBrowser1.Navigate link
End Sub

Praktische Beispiele

Hier ist ein einfaches Beispiel, wie du eine ComboBox mit URLs füllst:

Private Sub UserForm_Initialize()
    ComboBox1.AddItem "http://www.kinderwebsite1.de"
    ComboBox1.AddItem "http://www.kinderwebsite2.de"
    ComboBox1.AddItem "http://www.kinderwebsite3.de"
End Sub

Tipps für Profis

  • Verwende die webbrowser1.navigate vba Methode, um komplexe Navigationen zu implementieren, z.B. das Laden von Seiten basierend auf Benutzerinteraktionen.
  • Teste deine Userform in verschiedenen Excel-Versionen, um sicherzustellen, dass der vba webbrowser überall gut funktioniert.

FAQ: Häufige Fragen

1. Kann ich auch Bilder im Webbrowser anzeigen?
Ja, der Webbrowser kann jede Art von HTML-Inhalt anzeigen, einschließlich Bilder.

2. Ist es möglich, JavaScript im Webbrowser zu verwenden?
Ja, der Webbrowser in Excel kann JavaScript ausführen, allerdings kann die Unterstützung je nach Excel-Version variieren.

3. Wie kann ich die Größe des Webbrowser-Steuerelements anpassen?
Du kannst die Größe des Steuerelements im Eigenschaftenfenster im VBA-Editor anpassen oder im Code mit WebBrowser1.Width und WebBrowser1.Height.

4. Welche Excel-Versionen unterstützen den VBA-Webbrowser?
Der VBA-Webbrowser ist in den meisten modernen Versionen von Excel verfügbar, darunter Excel 2010, 2013, 2016 und 2019.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige