Rückkehr in VBA-Code-Beispiele

VBA – Hyperlinks

Dieses VBA-Tutorial behandelt die verschiedenen Möglichkeiten, mit Hyperlinks in VBA zu arbeiten.

VBA-Hyperlinks

Mit VBA können Sie Hyperlinks hinzufügen, Hyperlinks entfernen, E-Mails mit Hyperlinks erstellen und Dateien mit Hyperlinks in VBA öffnen.

Hinzufügen eines Hyperlinks mit VBA

Die Methode Hyperlinks.Add fügt mit VBA einen Hyperlink zu einer Zelle hinzu.

Mit dem folgenden Code wird der Zelle A1 ein Hyperlink hinzugefügt:

Sub HyperlinkZuZelleHinzufuegen()
  ActiveSheet.Hyperlinks.Add Range("A1"), Address:="https://www.automateexcel.com/excel/"
End Sub

Das Ergebnis ist:

hyperlink in zelle hinzufuegen

Hinzufügen von Anzeigetext mit VBA

Sie können Ihrem Hyperlink mit VBA einen benutzerfreundlichen Anzeigetext hinzufügen. Wenn Sie die Arbeitsblattfunktionalität verwendeten, würden Sie einen Hyperlink einfügen und dann in dem dafür vorgesehenen Dialogfeld einen anzuzeigenden Text hinzufügen.

Der folgende Code veranschaulicht, wie Sie mit VBA einen anzuzeigenden Text zu Ihrem Hyperlink hinzufügen können:

Sub HyperlinkAnzeigeText()
  ActiveSheet.Hyperlinks.Add Range("A1"), Address:="https://www.automateexcel.com/excel/", TextToDisplay:="Automate Excel"
End Sub

Das Ergebnis ist:

vba hyperlink anzeigetext hinzufuegen

Hinzufügen eines ScreenTip mit VBA

Sie können einen ScreenTip zu Ihrem Hyperlink hinzufügen, den der Betrachter sieht, wenn er den Mauszeiger über den Link bewegt.

Der folgende Code zeigt, wie Sie mit VBA einen ScreenTip zu Ihrem Hyperlink hinzufügen können:

Sub ScreenTipFuerHyperlink()
  ActiveSheet.Hyperlinks.Add Range("A1"), Address:="https://www.automateexcel.com/excel/", _
TextToDisplay:="Automate Excel", ScreenTip:="Dies ist der Link zu AutomateExcel."
End Sub

Das Ergebnis ist:

vba hyperlink screentip hinzufuegen

Löschen eines Hyperlinks mit VBA

Die Methode Hyperlinks.Delete kann verwendet werden, um einen Hyperlink aus einer Zelle zu löschen.

Der folgende Code löscht den Hyperlink aus Zelle A1 und den Text in der Zelle.

Beachten Sie, dass durch das Löschen des Hyperlinks nicht der Text selbst gelöscht wird. Wenn Sie also den Text löschen möchten, müssen Sie auch die Clear-Methode verwenden.

Sub HyperlinkAusZelleLoeschen()
  Range("A1").Hyperlinks.Delete
  Range("A1").Clear
End Sub

Alle Hyperlinks in einem Arbeitsblatt löschen

Sie können auch alle Hyperlinks in Ihrem Arbeitsblatt löschen, indem Sie die Methode Hyperlinks.Delete verwenden.

Der folgende Code löscht alle Hyperlinks auf dem ersten Arbeitsblatt in Ihrer Arbeitsmappe:

Sub AlleHyperlinksInArbeitsblattLoeschen()
  ThisWorkbook.Sheets(1).Hyperlinks.Delete
End Sub

Folgen eines Website-Hyperlinks mit VBA

Mit dem folgenden Code können Sie eine Website-Adresse in einem neuen Fenster in Ihrem Browser öffnen, indem Sie die Methode FollowHyperlink in Ihrer Arbeitsmappe verwenden:

Sub FollowHyperlinkFuerWebsite()
  ActiveWorkbook.FollowHyperlink Address:="https://www.automateexcel.com/excel", NewWindow:=True
End Sub

Einem Hyperlink zu einem Ordner auf Ihrem Laufwerk folgen

Der folgende Code öffnet einen Ordner namens ExcelFiles auf dem Desktop mit Hilfe der FollowHyperlink-Methode:

Sub FollowHyperlinkFuerOrdneraufLaufwerk()
  ActiveWorkbook.FollowHyperlink Address:="C:\Desktop\ExcelFiles"
End Sub

Einem Hyperlink zu einer Datei auf Ihrem Laufwerk folgen

Der folgende Code öffnet eine Excel-Datei namens WorkbookOne im Ordner ExcelFiles auf dem Desktop mit der FollowHyperlink-Methode:

Sub FollowHyperlinkFuerDatei()
  ActiveWorkbook.FollowHyperlink Address:="C:\Desktop\ExcelFiles\WorkbookOne.xlsx", NewWindow:=True
End Sub

Zu einer Zelle in einem anderen Blatt in derselben Arbeitsmappe wechseln

Sie können einen Hyperlink zu einer Zelle in einem Blatt hinzufügen, der Sie zu einem anderen Blatt in derselben Arbeitsmappe mit VBA führt. Angenommen, Sie befinden sich auf Blatt1, Zelle A1 Ihrer Arbeitsmappe, und Sie möchten einen Hyperlink zu Blatt2, Zelle B2 derselben Arbeitsmappe einfügen.

Der folgende Code veranschaulicht, wie dies zu tun ist:

Sub GeheZuAndererZelleInAnderemArbeitsblattInDerselbenArbeitsmappe()
  ActiveSheet.Hyperlinks.Add Range("A1"), Address:="", SubAddress:="'" & Tabelle2.Name & "'!B2", _
TextToDisplay:="Klicken Sie hier, um zu Tabelle2, Zelle B2 der gleichen Arbeitsmappe zu gelangen"
End Sub

Alle Hyperlinks in einem Arbeitsblatt anzeigen

Sie können auf die Hyperlinksammlung zugreifen und alle Hyperlinks in Ihrem Arbeitsblatt im Direktfenster im VBA-Editor anzeigen. Sie müssen zunächst STRG+G auf Ihrer Tastatur drücken oder im VBA-Editor auf Ansicht>Direktfenster gehen, um das Direktfenster anzuzeigen.

Der folgende Code zeigt, wie Sie die Hyperlinks in Ihrem Arbeitsblatt im Direktfenster anzeigen können:

Sub ZeigeAlleHyperlinksImArbeitsblatt()

Dim ws As Worksheet

Set ws = ThisWorkbook.Sheets(1)

For Each lnk In ws.Hyperlinks
Debug.Print lnk.Address
Next lnk

End Sub

Die Ergebnisse werden im Direktfenster angezeigt.

alle hyperlinks im direktfenster ausgeben

Alle Hyperlinks in einer Arbeitsmappe anzeigen

Sie können auf die Hyperlinksammlung zugreifen, um alle Hyperlinks in Ihrer Arbeitsmappe zu durchlaufen und in einem Direktfenster anzuzeigen.

Der folgende Code zeigt, wie es funktioniert und verwendet eine verschachtelte Schleife, um dies zu erreichen:

Sub ZeigeAlleHyperlinksImArbeitsmappe()

Dim ws As Worksheet

For Each ws In ActiveWorkbook.Worksheets
For Each lnk In ws.Hyperlinks
MsgBox lnk.Address
Next lnk
Next ws

End Sub

Verwenden der FollowHyperlink-Methode zum Erstellen von E-Mails

Sie können E-Mails auch mit der FollowHyperlink-Methode erstellen.

Der folgende Code zeigt Ihnen, wie Sie E-Mails mit der FollowHyperlink-Methode in VBA erstellen können:

Sub EmailPerHyperlinkSenden()

Dim msgLink As String

msgLink = "mailto:" & "person@email.com" & "?" & "subject=" & "Hallo" & "&" & "body=" & "Wie geht's Ihnen?"
ActiveWorkbook.FollowHyperlink (msgLink)

End Sub

Das Ergebnis ist:

email mit hyperlink versenden

Hinzufügen eines Hyperlinks zu einer AutoForm in Excel

Sie können einer AutoForm in Excel einen Hyperlink hinzufügen, so dass der Benutzer zu einer Website-Adresse weitergeleitet wird, wenn er auf die Form klickt.

Der folgende Code erstellt ein abgerundetes Rechteck, fügt den Text in das Rechteck ein und fügt dem Rechteck einen Hyperlink hinzu:

Sub HyperlinkZuAutoformHinzufuegen()

Dim meineForm As Shape
Set meinDokument = Worksheets("Tabelle1")
Set meineForm = meinDokument.Shapes.AddShape(msoShapeRoundedRectangle, 100, 100, 90, 30)

With meineForm
.TextFrame.Characters.Text = "Automate Excel"
End With

ActiveSheet.Hyperlinks.Add Anchor:=meineForm, Address:="https://www.automateexcel.com/excel"

End Sub

Das Ergebnis ist:

vba hyperlink autoform hinzufuegen

Einfügen der Hyperlink-Formel in eine Zelle mit VBA

Nehmen wir an, Sie haben einen Beitragstitel in Zelle A4 und einen Beitragslink in Zelle B4, wie in der folgenden Abbildung gezeigt.

hyperlink ueber formel hinzufuegen

Eine kurze Erinnerung an die Syntax der Arbeitsblatt-Hyperlink-Formel ist: HYPERLINK(link_location, [friendly_name])

link_location – Dies ist der Link zu dem Dokument, der Datei, der Stelle in der Arbeitsmappe oder der Online-Site.

friendly_name –(Optional) – Der Text oder der numerische Wert, der in der Zelle angezeigt wird.

In Zelle C4 möchten Sie den Hyperlink mit einem benutzerfreundlichen Text hinzufügen, der angezeigt werden soll. Normalerweise würden Sie die Formel =HYPERLINK(B4,A4) in C4 eingeben, um Folgendes zu erhalten:

vba hyperlink formel verwenden

Sie könnten stattdessen VBA verwenden, um das gleiche Ergebnis zu erzielen, und diese Formel in die Zelle auf Blatt1 mit dem folgenden Code einfügen:

Sub HyperlinkFormelInZelleEinfuegen()
  ActiveWorkbook.Worksheets("Tabelle1").Range("C4").Formula = "=hyperlink(B4,A4)"
End Sub

Hinzufügen eines Hyperlinks zu einer Schaltfläche in Access

Mit VBA können Sie auch in Access mit Hyperlinks arbeiten. Nehmen wir an, wir haben eine Schaltfläche in einem Formular, und wenn der Benutzer auf diese Schaltfläche klickt, soll er zu einer Website weitergeleitet werden. Eine Möglichkeit, dies zu tun, ist die Methode Application.FollowHyperlink.

Wir haben unser Beispielformular mit einer Schaltfläche namens buttonOne wie unten gezeigt.

Der Code für diese Schaltfläche wäre:

Private Sub Befehl1_Click()

Application.FollowHyperlink ("https://www.automateexcel.com/excel/")

End Sub

Erstellen eines Hyperlinks aus einer Auswahl in Word

Sie können auch mit Hyperlinks in Word VBA arbeiten.

Nehmen wir an, wir haben in Word einen Text mit der Aufschrift „Klicken Sie hier, um zur Website von Automate Excel zu gelangen“, der wie unten gezeigt ausgewählt ist.

vba word hyperlink hinzufuegen

Um diesen Text mit VBA in einen Hyperlink zu verwandeln, können Sie den folgenden Code verwenden:

Private Sub AuswahlInHyperlinkUmwandeln()
  ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, _
Address:="https://www.automateexcel.com/excel/", ScreenTip:="Bitte Hier Klicken", Target:=NewWindow
End Sub

Das Ergebnis ist:

word auswahl hyperlink hinzufuegen