VBA-Hyperlinks

Hyperlinks sind URLs, die an einen Wert angehängt sind, der angezeigt wird, wenn wir mit der Maus darüber fahren und wenn wir darauf klicken, wird die URL geöffnet. In VBA verfügen wir über eine integrierte Eigenschaft, um Hyperlinks in VBA zu erstellen und diese Eigenschaft zu verwenden, verwenden wir die Add-Methode zusammen mit die Hyperlink-Anweisung zum Einfügen eines Hyperlinks in eine Zelle.

Hyperlinks in Excel VBA

Obwohl wir in Excel die Tastenkombination Bild auf und Bild ab haben, können Sie zwischen den Blättern wechseln. Aber es wird komplex, wenn wir zwischen 10 und mehr Arbeitsblättern wechseln müssen. Hier kommt die Schönheit von „Hyperlinks in Excel“ ins Spiel. Der Hyperlink ist eine vorgegebene URL, die Sie zur zugewiesenen Zelle oder zum jeweiligen Arbeitsblatt führt.

Wir alle wissen, wie man Hyperlinks im Arbeitsblatt erstellt, um schnell von einem Blatt zu einem anderen zu wechseln, und Sie können auch zu jedem anderen Blatt wechseln. Im heutigen Artikel zeigen wir Ihnen jedoch, wie Sie mithilfe der VBA-Codierung Hyperlinks erstellen.

Formel von VBA-Hyperlinks

Schauen wir uns die Formel der Hyperlinks in Excel VBA an.

  • Anker: In welcher Zelle möchten Sie einen Hyperlink erstellen?
  • Adresse: Wie lautet die URL zum zu navigierenden Hyperlink?
  • [Unteradresse]: Wo befindet sich die Seite?
  • [Bildschirmtipp]: Welchen Wert soll angezeigt werden, wenn Sie einen Mauszeiger auf den Namen oder die Zelle des Hyperlinks setzen?
  • [Anzuzeigender Text]: Welcher Test soll in der Zelle angezeigt werden? Zum Beispiel Arbeitsblattname.

Wie erstelle ich Hyperlinks in Excel VBA?

Sie können diese VBA-Hyperlinks-Vorlage hier herunterladen - VBA-Hyperlinks-Vorlage

Angenommen, Sie möchten einen VBA-Hyperlink zu dem Blatt mit dem Namen "Hauptblatt" aus dem anderen Blatt "Beispiel 1" erstellen.

Im Arbeitsblatt „Beispiel 1“ und in der Zelle A1 werde ich den Hyperlink mit Code in VBA erstellen.

Schritt 1: Wählen Sie zuerst die Zelle A1 des Arbeitsblatts Beispiel 1 aus.

Code:

 Sub Hyperlink_Example1 () Arbeitsblätter ("Beispiel 1"). Wählen Sie Bereich ("A1"). Wählen Sie End Sub 

Schritt 2: Öffnen Sie jetzt mithilfe des Active Cell-Objekts die Hyperlinks. Methode hinzufügen.

Code:

 Sub Hyperlink_Example1 () Arbeitsblätter ("Beispiel 1"). Wählen Sie Bereich ("A1"). Wählen Sie ActiveCell.Hyperlinks.Add (End Sub 

Schritt 3: Das erste  Argument ist "Anchor", dh in welcher Zelle wir einen Link erstellen würden, um den VBA-Hyperlink zu erstellen. In diesem Fall Zelle A1 und da wir bereits Zelle A1 ausgewählt haben, um sie als "Auswahl" zu erwähnen.

Code:

 Sub Hyperlink_Example1 () Arbeitsblätter ("Beispiel 1"). Wählen Sie den Bereich ("A1"). Wählen Sie ActiveCell.Hyperlinks.Add (Auswahl, End Sub 

Schritt 4: Wir erstellen hier keine Adresse. Ignorieren Sie die Adresse ab sofort.

Code:

 Sub Hyperlink_Example1 () Arbeitsblätter ("Beispiel 1"). Wählen Sie den Bereich ("A1"). Wählen Sie ActiveCell.Hyperlinks.Add Anchor: = Selection, Address: = "", End Sub 

Schritt 5: Als nächstes folgt die Unteradresse. Hier müssen wir erwähnen, auf welches Blatt wir uns beziehen und in welcher ersten Zelle dieses Blattes.

Code:

 Sub Hyperlink_Example1 () Arbeitsblätter ("Beispiel 1"). Wählen Sie Bereich ("A1"). Wählen Sie ActiveCell.Hyperlinks.Add Anchor: = Auswahl, Adresse: = "", SubAddress: = "'Hauptblatt'! A1", Ende Sub 

Ich habe den Blattnamen als "Hauptblatt" erwähnt und in dieser Blattzellenadresse ist "A1".

Schritt 6: Ignorieren Sie auch die Bildschirmspitze. Geben Sie für die Anzeige von Text den Blattnamen an.

Code:

 Sub Hyperlink_Example1 () Arbeitsblätter ("Beispiel 1"). Wählen Sie Bereich ("A1"). Wählen Sie ActiveCell.Hyperlinks.Add Anchor: = Auswahl, Adresse: = "", SubAddress: = "'Hauptblatt'! A1", TextToDisplay : = "Hauptblatt" End Sub 

Ok, wenn Sie diesen Code mit der Taste F5 oder manuell ausgeführt haben, wird in der Zelle A1 im Blatt „Beispiel 1“ ein Hyperlink erstellt.

Wenn Sie auf den Hyperlink „Hauptblatt“ klicken, wird zum Hauptblatt weitergeleitet.

Hyperlinks mehrerer Blätter mit Schleifen

Wir haben gesehen, wie ein VBA-Hyperlink für ein Blatt erstellt wurde. Wenn wir viele Blätter haben, ist es schwierig, für jedes Blatt einen VBA-Hyperlink mit derselben Codezeile für jedes Blatt zu erstellen.

Angenommen, Sie haben 11 Arbeitsblätter, wie im folgenden Bild gezeigt.

Sie möchten mit VBA-Code einen Hyperlink für jedes Blatt im Indexblatt erstellen.

Schritt 1: Definieren Sie die Variable als Arbeitsblatt.

Code:

 Sub Create_Hyperlink () Dim Ws As Worksheet End Sub 

Schritt 2: Wählen Sie zunächst den Arbeitsblattindex und dann die Zelle A1 aus.

Code:

 Sub Create_Hyperlink () Dim Ws As Worksheet Worksheets ("Index"). Wählen Sie Range ("A1"). Wählen Sie End Sub 

Schritt 3: Öffnen Sie nun für jede Schleife in VBA.

Code:

 Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets Next Ws End Sub 

Step 4: Since we have already selected the cell A1 it is now an active cell. So start the hyperlink with the active cell.

Code:

 Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add( Next Ws End Sub 

Step 5: Anchor is a hyperlink cell. So it is the active cell.

Code:

 Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell, Next Ws End Sub 

Step 6: Address is nothing mention it as “”.

Code:

 Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell,Address:="", Next Ws End Sub 

Step 7: Subaddress is when we loop through the sheet it should be the sheet name. To refer the sheet name we need a single quote “” with sheet name and “! Cell Address” and close the sheet name with a single quote “”.

Code:

 Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell,Address:="",SubAddress:=""& Ws.Name&"!A1"&"", Next Ws End Sub 

Step 8: Ignore Screen tip and for Text to display you can enter the worksheet name.

Code:

 Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell, Address:="", SubAddress:="" & Ws.Name & "!A1" & "", ScreenTip:="", TextToDisplay:=Ws.Name Next Ws End Sub 

Step 9: To store the hyperlink of each sheet in a different cell every time hyperlink created for one sheet we need to move down one cell from the active cell.

Code:

 Sub Create_Hyperlink() Dim Ws As Worksheet Worksheets("Index").Select Range("A1").Select For Each Ws In ActiveWorkbook.Worksheets ActiveCell.Hyperlinks.Add Anchor:=ActiveCell, Address:="", SubAddress:="" & Ws.Name & "!A1" & "", ScreenTip:="", TextToDisplay:=Ws.Name ActiveCell.Offset(1, 0).Select Next Ws End Sub 

This will create a hyperlink of all the sheets in the Index sheet. This code is dynamic, whenever there is any addition or deletion of sheets we just need to run this code to have an updated hyperlink.