Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Hyperlinks automatisch ändern





Frage

Hi ... wäre schön wenn ihr mir helfen könntet. bin ein excel newbie, habe aber hier ein excel dokument (bzw mehrere) mit um die 5000 hyperlinks. diese verweisen auf einen pfad, der aber geändert wurde. Alle hyperlinks wurden NICHT als formel oder mit der "hyperlinksbasis" (Datei > eigenschaften) erstellt. nun die frage, wei kann ich die am effektivsten ändern? Makro? wenn ja ich habe keine ahnung wie ich eines schreiben soll. ich zähle auf euch, thx schonmal

Antwort 1 von Guenter

Hallo nexus,

wenn es sich bei den Hyperlinks um Pfadangaben handelt und diese gleich sind, kannst Du doch mit Suchen/Ersetzen den neuen Pfad eintragen lassen.

Wenn das nicht geht, nochmals melden.

Gruß
Günter


Antwort 2 von nexus

danke günther für deinen tipp, aber bei den Hyperlinks handelt es sich nicht um pfadangaben, sonder um einen Text, der dann in einen hyperlinkumgewandelt wurde, also der pfad "dahinter" steht. damit greift leider auch das "suchen/ersetzen" nicht mehr ...

ich habe auch mittlerweile nochmal ein bisschen rumgeschaut, aber noch keien Lösung gefunden.

mfg
nex

Antwort 3 von Guenter

Hallo nexus,

ich habe mich nochmals schlau gemacht.
Es gibt die Möglichkeit mit einem Makro die Hyoerlinks zu ändern.


Sub Hyperlinks_aendern()
   Dim n As Integer
   For n = 1 To Cells(Rows.Count, 1).End(xlUp).Row
     Cells(n, 1).Hyperlinks(1).Address = "c:\excel\Datei.xls"
   Next n
End Sub


Das ist ein Beipielmakro, bei dem alle Hyperlinks in der ersten Spalte in c:\excel\datei.xls geändert werden.

Das sollte jetzt noch an Deine Anwendung angepast werden.

Wenn Du nicht weiter kommst, nochmals melden.

Gruß
Günter

Antwort 4 von nexus

danke, das habe ich sogar mal verstanden ;), aber ich habe trotzdem noch eine frage:

bei diesem makro werden doch alle hyperlinks dann auf nur diese eine datei umgeschrieben, oder? aber jeder hyperlink soll auf eine andere datei verweisen. dabei haben sich die namen der zieldateien nicht geändert, sondern nur der pfad dahin, also, der alte link war zum beispiel:

\\server\pfad\DATEINAME wobei der dateiname gleichgeblieben ist

der neue link soll dann zB lauten:
\\server-2\pfad-2\DATEINAME

gibt es denn eine möglichkeit den vorderenteil quasi "abzuschneiden" (\\server\pfad\) und durch \\server-2\pfad-2\ zu ersetzen?

ich hab probleme was? :-)
wäre dir über deine hilfe aber sehr verbunden

mfg nexus

Antwort 5 von Guenter

Hallo nexus,

ich hoffe, es funktioniert hiermit:

Option Explicit

Sub Hyperlinks_aendern()
   Dim n As Integer
   Dim hlink As String
   Dim datei As String
   For n = 1 To Cells(Rows.Count, 1).End(xlUp).Row
     hlink = Cells(n, 1).Hyperlinks(1).Address
     datei = Mid(hlink, 15, Len(hlink) - 14)
     Cells(n, 1).Hyperlinks(1).Address = "\\server-2\pfad-2\" & datei
   Next n
End Sub


Es ist klar, dass Du noch entsprechend den richtigen Pfad eingeben musst.

Gruß
Günter

Antwort 6 von nexus

ah danke, sieht gut aus, aber hab nur noch eine verständnis frage:

Welche zeile bewirkt das der vordere teil des pfades abgeschnitten wird? ich vermute mal das hat mit:

datei = Mid(hlink, 15, Len(hlink) - 14)

zu tun. weil das ist ja wichtig zu wissen, denn das muss ich ja dann auch noch konfigurieren und nicht nur :


Hyperlinks(1).Address = "\\server-2\pfad-2\"

wirklich big thx für deine hilfe

mfg nexus

Antwort 7 von Guenter

Hallo nexus,

datei = Mid(hlink, 15, Len(hlink) - 14)

in dieser Zeile wird der Dateiname geholt.
Mid ist die Funktion, die den String zerlegt. Eingabe für die Funktion ist der String, der Start, ab dem gelesen wird und die Länge, die gelesen wird.

Die Länge des Gesamtstrings erhalte ich mit Len(String). Den Start erhalte ich, indem ich den von Dir angegebenen Pfad "\\server\pfad\" + 1 nehme Die zulesende Länge erhalte ich aus der Gesamtlänge - Vorgabe.

Ich hoffe, Du kannst das nachvollziehen, ansonsten gute Erklärung in der Excel-Hilfe und üben.

Guß
Günter

Antwort 8 von nexus

Vielen dank ...

es scheint zu funktionieren :D

bin ich froh das ich net tausende von links per hand umschreiben muss :D

nochmal big thx und bye

mfg nexus

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: