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

Forumthread: Alle Hyperlinks im Tabellenblatt öffnen

Alle Hyperlinks im Tabellenblatt öffnen
26.10.2018 22:28:29
Spenski
https://www.herber.de/bbs/user/124940.xlsm
Hallo , ich brauche folgende Hilfe.
Ich möchte, dass sich alle hyperlinks (Spalte L) im Browser öffnen.
Damit Später nicht hunderte Fenster aufgehen, würde ich gerne in Spalte J ein Land markieren und nur die Links von Spielern aus diesen land sollen aufgehen per Button.
Hat eventuell lust mir dabei weiter zu helfen?
Danke Elliss
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Alle Hyperlinks im Tabellenblatt öffnen
27.10.2018 00:00:25
Zwenn
Hallo Elliss,
das untenstehende kleine Makro öffnet alle vorhandenen Links in einem selektierten Bereich. Die Länderauswahl ist da nicht drin. Habe es selber nur aus einem anderen Forum (Link der Quelle in den Kommentaren). Falls Du es so nicht nutzen willst, bietet es einen guten Ausgangspunkt und muss entsprechend um Deine Länderauswahl ergänzt werden.

Sub LinksInMarkierungÖffnen()
'Makro aus einem Internetforum.
'Es wird jede Zelle in einer Markierung auf einen Link geprüft.
'Ist einer hinterlegt, wird er im Browser geöffnet.
'Auf diese Weise lassen sich beliebig viele Links auf einmal öffnen.
'Quelle:
'http://www.ms-office-forum.net/forum/showthread.php?t=238882
Dim c As Range
For Each c In Selection
If c.Hyperlinks.Count Then
c.Hyperlinks(1).Follow
End If
Next c
End Sub
Viele Grüße,
Zwenn
Anzeige
AW: Alle Hyperlinks im Tabellenblatt öffnen
27.10.2018 08:16:35
Spenski
Hallo Zwenn
Leider passiert bei dem Code gar nix.
Trotzdem Danke
mfg
Elliss
AW: Alle Hyperlinks im Tabellenblatt öffnen
27.10.2018 11:34:14
Zwenn
Hallo Elliss,
der Code funktioniert ausgezeichnet. Das weiß ich so genau, weil wir ihn in der Firma seit Jahren benutzen ;-) Ich hatte ja geschrieben, dass er für Deine Wünsche erweitert werden muss. Aber inzwischen hat Sepp Dir ja eine Lösung geliefert :-)
Viele Grüße,
Zwenn
Anzeige
AW: Alle Hyperlinks im Tabellenblatt öffnen
27.10.2018 08:29:38
Sepp
Hallo Ellis,
gewünschte Spieler in spalte J auswählen und Code ausführen.
Modul Modul1
Option Explicit 
 
Sub openLinks() 
  Dim rng As Range, rngLink As Range 
   
  Set rngLink = Intersect(Range("J:J"), Selection) 
  If Not rngLink Is Nothing Then 
    For Each rng In rngLink 
      If rng.Offset(0, 1) Like "http*://*" Then 
        ThisWorkbook.FollowHyperlink rng.Offset(0, 1) 
      End If 
    Next 
  Else 
    MsgBox "Keine Markierung in Spalte J!" 
  End If 
   
  Set rngLink = Nothing 
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


 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Alle Hyperlinks im Tabellenblatt öffnen
27.10.2018 08:38:11
Spenski
Hallo Sepp , erstmal einen schönen Samstag morgen :D
Funktioniert, nicht ganz was ich suchte , aber irgendwie viel besser :D
Dank dir.
AW: Alle Hyperlinks im Tabellenblatt öffnen
27.10.2018 08:41:06
Sepp
Hallo Ellis,
dann musst du halt genauer beschreiben, was du suchst!
 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Alle Hyperlinks im Tabellenblatt öffnen
27.10.2018 08:44:30
Spenski
Hallo Sepp, das war nicht böse gemeint.
...,würde ich gerne in Spalte J ein Land markieren und nur die Links von Spielern aus diesen land sollen aufgehen per Button.
Damit war gemeint, dass wenn ich zb J6 Markiere alle Spieler aus diesem Land aufgehen, in dem Fall Griechenland/Hellas
mfg
Elliss
Anzeige
AW: Alle Hyperlinks im Tabellenblatt öffnen
27.10.2018 08:56:59
Sepp
Hallo Ellis,
dann halt so.
Sub openLinks2()
  Dim rng As Range
  
  If Not Intersect(Range("J:J"), ActiveCell) Is Nothing Then
    For Each rng In Range("J:J").SpecialCells(xlCellTypeConstants)
      If rng = ActiveCell Then
        If rng.Offset(0, 1) Like "http*://*" Then
          ThisWorkbook.FollowHyperlink rng.Offset(0, 1)
        End If
      End If
    Next
  Else
    MsgBox "Keine Markierung in Spalte J!"
  End If
  
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


 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: Alle Hyperlinks im Tabellenblatt öffnen
27.10.2018 09:23:25
Spenski
Danke
;
Anzeige
Anzeige

Infobox / Tutorial

Alle Hyperlinks im Tabellenblatt öffnen


Schritt-für-Schritt-Anleitung

Um alle Hyperlinks in einem Excel-Tabellenblatt zu öffnen, kannst du ein einfaches VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und lade dein Arbeitsblatt.

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

  3. Klicke auf Einfügen > Modul, um ein neues Modul hinzuzufügen.

  4. Kopiere und füge den folgenden Code in das Modul ein:

    Sub LinksInMarkierungÖffnen()
       Dim c As Range
       For Each c In Selection
           If c.Hyperlinks.Count Then
               c.Hyperlinks(1).Follow
           End If
       Next c
    End Sub
  5. Schließe den VBA-Editor und gehe zurück zu deinem Arbeitsblatt.

  6. Wähle die Zellen aus, die die Hyperlinks enthalten, die du öffnen möchtest.

  7. Drücke ALT + F8, wähle LinksInMarkierungÖffnen und klicke auf Ausführen.


Häufige Fehler und Lösungen

  • Problem: Das Makro öffnet keine Links.

    • Lösung: Stelle sicher, dass die Zellen, die du ausgewählt hast, tatsächlich Hyperlinks enthalten. Überprüfe auch, ob das Makro korrekt eingefügt und gespeichert wurde.
  • Problem: Es öffnen sich zu viele Fenster.

    • Lösung: Wenn du nur bestimmte Links öffnen möchtest, nutze den Modifikationscode, um die Links in einer bestimmten Spalte (z.B. Spalte J) zu filtern.

Alternative Methoden

Eine weitere Methode, um mehrere Links gleichzeitig zu öffnen, ist die Verwendung eines spezifischen Filters in deinem Makro. Hier ist ein Beispiel:

Sub openLinks()
    Dim rng As Range
    Dim rngLink As Range

    Set rngLink = Intersect(Range("J:J"), Selection)
    If Not rngLink Is Nothing Then
        For Each rng In rngLink
            If rng.Offset(0, 1).Value Like "http*://*" Then
                ThisWorkbook.FollowHyperlink rng.Offset(0, 1).Value
            End If
        Next rng
    Else
        MsgBox "Keine Markierung in Spalte J!"
    End If
End Sub

Mit diesem Makro kannst du die Links in Spalte L basierend auf der Auswahl in Spalte J öffnen.


Praktische Beispiele

Wenn du beispielsweise eine Liste von Spielern hast und nur die Links zu Spielern aus Griechenland (z.B. in Zelle J6) öffnen möchtest, kannst du den folgenden Code verwenden:

Sub openLinks2()
    Dim rng As Range

    If Not Intersect(Range("J:J"), ActiveCell) Is Nothing Then
        For Each rng In Range("J:J").SpecialCells(xlCellTypeConstants)
            If rng = ActiveCell Then
                If rng.Offset(0, 1).Value Like "http*://*" Then
                    ThisWorkbook.FollowHyperlink rng.Offset(0, 1).Value
                End If
            End If
        Next rng
    Else
        MsgBox "Keine Markierung in Spalte J!"
    End If
End Sub

Tipps für Profis

  • Verwende Schaltflächen: Du kannst Schaltflächen in Excel erstellen, um das Makro einfacher auszuführen.
  • Fehlerbehandlung einfügen: Überlege, Fehlerbehandlungsroutinen in dein Makro einzubauen, um unerwartete Probleme zu vermeiden.
  • Benutzerdefinierte Eingaben: Erweitere dein Makro um Eingabefelder, damit der Benutzer auswählen kann, welche Links geöffnet werden sollen.

FAQ: Häufige Fragen

1. Wie kann ich alle Links gleichzeitig öffnen?
Verwende das erste VBA-Makro und wähle die Zellen mit den Links aus, bevor du das Makro ausführst.

2. Kann ich nur bestimmte Links basierend auf einer Bedingung öffnen?
Ja, du kannst den VBA-Code anpassen, um nur Links zu öffnen, die bestimmten Kriterien entsprechen, wie im Beispiel oben gezeigt.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige