Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Hyperlinks automatisch starten

Hyperlinks automatisch starten
31.07.2008 15:43:00
Jens
Hallo Forum
Hab da mal nen "Problemchen".
In Tabelle1 Spalte A stehen untereinander mehrere Hyperlinks ins www.
Diese Hyperlinks würd ich gerne automatisch stündlich anwählen und nach Anwahl die IE-Fenster wieder schliessen lassen.
Also:
Starte HL in A1 im IE.
Schliesse IE.
Starte HL in A2 im IE
Schliesse IE.
usw.
Könnte mir da mal jemand mit nem Makro behilflich sein?
Danke Euch.
Gruß aus dem Sauerland
Jens

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hyperlinks automatisch starten
31.07.2008 18:12:53
Heinz
Hi,
erscheint ziemlich sinnlos, oder?
mfg Heinz

AW: Hyperlinks automatisch starten
31.07.2008 18:16:40
Jens
Hallo
Wenn es für sinnlos wäre, würd ich nicht nach einer Lösung fragen.
Gruß aus dem Sauerland
Jens

AW: Hyperlinks automatisch starten
31.07.2008 20:23:00
Heinz
Hi,
deine Antwort gibt keinerlei Aufschluss darüber, was du damit erreichen willst.
mfg Heinz

Anzeige
AW: Hyperlinks automatisch starten
01.08.2008 00:37:44
Jens
Hallo
Ich muss die Links stündlich aufrufen, um von dort Daten abzufragen.
Die Datenabfrage ist nicht das Problem. Lediglich der stündliche Aufruf der Link ist entscheidend.
Gruß aus dem Sauerland
Jens

AW: Hyperlinks automatisch starten
01.08.2008 08:32:00
Tino
Hallo,
so müsste es gehen.
Über MeineWB wird eine Schleife gestartet die alle Webseiten ab A1 bis zur letzten gefüllten durchläuft und diese an die Funktion Linkaufruf übergibt.
Durch StartTimer wird der nächste durchlauf eingestellt, hier eine Stunde.
Auf eine Fehlerbehandlung für den Webaufruf habe ich jetzt mal verzichtet, kannst du ja selbst einbauen.
In ein Modul

Option Explicit
Public Zeit As Date
Sub StartTimer()
Application.OnTime Zeit, "MeineWB"
End Sub
Sub ResetTimer()
On Error Resume Next
Application.OnTime earliesttime:=Zeit, _
procedure:="MeineWB", schedule:=False
On Error GoTo 0
End Sub
Sub MeineWB()
Dim A As Long
For A = 1 To Cells(Rows.Count, 1).End(xlUp).Row
If Cells(A, 1) > "" Then Linkaufruf Cells(A, 1)
Next A
Zeit = Now + CDate("01:00:00")
StartTimer
End Sub
Function Linkaufruf(strSeite As String)
Dim appIE As Object
Set appIE = CreateObject("InternetExplorer.application")
appIE.Visible = True  'False ist unsichtbar    True ist Sichtbar
appIE.Navigate strSeite
While Not appIE.ReadyState = 4 'Warte auf Webseite
DoEvents
Wend
appIE.Quit
Set appIE = Nothing
End Function


In DieseArbeitsmappe als Code


Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call ResetTimer
End Sub


Gruß Tino

www.VBA-Excel.de


Anzeige
AW: Hyperlinks automatisch starten
01.08.2008 08:52:11
Jens
Hallo Tino
Genau so hab ich das gemeint.
Danke Dir für Deine Hilfe :-)
Fehlerroutine etc. sollte kein Problem sein.
Gruß aus dem Sauerland
Jens
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Hyperlinks automatisch starten in Excel


Schritt-für-Schritt-Anleitung

Um Hyperlinks in Excel automatisch stündlich zu starten, benötigst du ein VBA-Makro. Folge diesen Schritten:

  1. Entwicklertools aktivieren: Stelle sicher, dass die Entwicklertools in Excel aktiviert sind. Gehe zu "Datei" > "Optionen" > "Menüband anpassen" und aktiviere das Kontrollkästchen für "Entwicklertools".

  2. VBA-Editor öffnen: Klicke auf "Entwicklertools" und dann auf "Visual Basic", um den VBA-Editor zu öffnen.

  3. Modul hinzufügen: Klicke mit der rechten Maustaste auf "VBA-Projekt (DeineDatei.xlsx)" und wähle "Einfügen" > "Modul".

  4. VBA-Code einfügen: Kopiere den folgenden Code in das Modul:

    Option Explicit
    Public Zeit As Date
    Sub StartTimer()
       Application.OnTime Zeit, "MeineWB"
    End Sub
    Sub ResetTimer()
       On Error Resume Next
       Application.OnTime earliesttime:=Zeit, _
       procedure:="MeineWB", schedule:=False
       On Error GoTo 0
    End Sub
    Sub MeineWB()
       Dim A As Long
       For A = 1 To Cells(Rows.Count, 1).End(xlUp).Row
           If Cells(A, 1) > "" Then Linkaufruf Cells(A, 1)
       Next A
       Zeit = Now + CDate("01:00:00")
       StartTimer
    End Sub
    Function Linkaufruf(strSeite As String)
       Dim appIE As Object
       Set appIE = CreateObject("InternetExplorer.application")
       appIE.Visible = True  'False ist unsichtbar    True ist Sichtbar
       appIE.Navigate strSeite
       While Not appIE.ReadyState = 4 'Warte auf Webseite
           DoEvents
       Wend
       appIE.Quit
       Set appIE = Nothing
    End Function
  5. Code in "DieseArbeitsmappe": Füge den folgenden Code in das "DieseArbeitsmappe"-Modul ein:

    Private Sub Workbook_BeforeClose(Cancel As Boolean)
       Call ResetTimer
    End Sub
  6. Speichern und Ausführen: Speichere die Arbeitsmappe als Makro-aktivierte Datei (*.xlsm). Schließe den VBA-Editor und führe das Makro über "Entwicklertools" > "Makros" aus.


Häufige Fehler und Lösungen

  • Internet Explorer öffnet sich nicht: Stelle sicher, dass die Internet Explorer-Anwendung auf deinem Computer installiert und funktionsfähig ist.

  • Makro läuft nicht: Überprüfe, ob die Makros in Excel aktiviert sind. Gehe zu "Datei" > "Optionen" > "Trust Center" > "Einstellungen für das Trust Center" > "Makroeinstellungen" und aktiviere die Makros.

  • Fehler beim Aufruf der Links: Füge eine Fehlerbehandlung in die Funktion Linkaufruf ein, um eventuelle Probleme beim Laden der Webseiten zu erfassen.


Alternative Methoden

Wenn du keine VBA-Makros verwenden möchtest, kannst du auch Software von Drittanbietern verwenden, die automatisierte Aufgaben in Excel erlaubt. Ein Beispiel dafür ist "AutoHotkey", das dir ermöglicht, Skripte zu erstellen, die Hyperlinks öffnen und schließen.


Praktische Beispiele

Hier ein Beispiel, wie du die Hyperlinks in Spalte A erstellen kannst:

A
http://www.example1.com
http://www.example2.com
http://www.example3.com

Das oben beschriebene Makro wird dann jede Stunde diese Links in Internet Explorer nacheinander öffnen.


Tipps für Profis

  • Nutze die Funktion DoEvents, um sicherzustellen, dass Excel während des Ladens der Webseiten nicht einfriert.
  • Experimentiere mit der Sichtbarkeit des Internet Explorer-Fensters, um die Ausführung zu optimieren (appIE.Visible = False).
  • Füge einen Timer hinzu, um die Ausführungszeit des Makros zu steuern und zu optimieren.

FAQ: Häufige Fragen

1. Muss ich Excel 365 verwenden?
Nein, das Makro funktioniert auch in früheren Versionen von Excel, solange die VBA-Umgebung verfügbar ist.

2. Kann ich auch andere Browser nutzen?
Das Beispiel verwendet Internet Explorer. Für andere Browser müsstest du andere Automatisierungsmethoden verwenden, da die Automatisierung mit VBA in der Regel auf Internet Explorer beschränkt 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