Kerstine hat ein Arbeitsblatt mit vielen, vielen verschiedenen Hyperlinks. Sie fragt sich, ob es eine Möglichkeit gibt, nur einen Teil jedes Links zu ersetzen.

Zum Beispiel möchte sie möglicherweise eine Instanz von http://www.mysite.com/ in c: / documents / mycopy / ändern. Wenn die Links etwas Zusätzliches enthalten, sollte dieser Teil erhalten bleiben. Wenn der ursprüngliche Link beispielsweise http://www.mysite.com/thispage.html lautet, wird er in c: /documents/mycopy/thispage.html geändert.

Dies kann leicht mit einem Makro durchgeführt werden. Der Grund dafür ist, dass die Hyperlinks mithilfe regulärer Zeichenfolgenfunktionen überprüft und geändert werden können.

Das folgende Makro bietet eine einfache Möglichkeit, das Problem zu beheben.

Sub EditHyperlinks()

Dim lnkH As Hyperlink     Dim sOld As String     Dim sNew As String

sOld = "http://www.mysite.com"

sNew = "c:/documents/mycopy/"



For Each lnkH In ActiveSheet.Hyperlinks         lnkH.Address = Replace(lnkH.Address, sOld, sNew)

lnkH.TextToDisplay = Replace(lnkH.TextToDisplay, sOld, sNew)

Next End Sub

Diese Routine durchläuft alle Hyperlinks im aktuellen Arbeitsblatt und nimmt bei Bedarf Änderungen an jedem einzelnen vor. Sowohl der Hyperlink als auch der angezeigte Text werden entsprechend geändert. Sie müssen lediglich Änderungen an den Zeichenfolgen sOld und sNew vornehmen, um anzugeben, wonach Sie suchen und durch was Sie sie ersetzen möchten.

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.

Dieser Tipp (11081) gilt für Microsoft Excel 2007, 2010, 2013, 2016, 2019 und Excel in Office 365. Eine Version dieses Tipps für die ältere Menüoberfläche von Excel finden Sie hier: