Excel Hyperlink ändern mit "Suchen & Ersetzen"?
Hallo zusammen!
Ich habe mir vor einiger Zeit ein Excel-Sheet mit verschiedenen "Blättern" angelegt auf welchem jeweils ein Link zu einer anderen Excel-Datei besteht. Jetzt habe ich Excel 2007 und bin dabei die ganzen Dateien zu konvertieren. Leider habe ich jetzt das Problem, das ich auch die Datei auf die die Hyperlinks abzielen von .xls auf .xlsx konvertiert habe und nun die ca. 60 Hyperlinks nicht mehr passen.
Jetzt endlich meine Frage: Habe ich irgendeine automatisierte Möglichkeit die ca. 60 Hyperlinks auf die neue Dateiendung abzuändern?
Von Hand wäre das eine Strafe.
Danke
Knochenmark
Antwort schreiben
Antwort 1 von M.O. vom 15.09.2021, 13:28 Options
Hallo Knochenmark,
du hast dir die Antwort ja schon in deiner Überschrift gegeben:
Bearbeiten - Ersetzen -
Suchen nach: .xls
Ersetzen durch: .xlsx
Gruß
M.O.
Antwort 2 von Beverly vom 15.09.2021, 13:29 Options
Hi,
mit Suchen und Ersetzen - Bereich markieren -> "suchen": .xls und "ersetzen durch": .xlsx -> Alle ersetzen.
Bis später,
Karin
Antwort 3 von Knochenmark vom 15.09.2021, 13:30 Options
Na wenn das so einfach wäre hätte ich hier nichts gepostet! Das geht leider nicht, weil er anscheinend den Hyperlink nicht als Zelleninhalt sieht, oder warum auch immer.
Knochenmark
Antwort 4 von coros vom 15.09.2021, 13:35 OptionsLösung
Hallo Knochenmark,
nachfolgender Code ersetzt Dir alle Hyperlinks der Datei gegen den Pfad und den neuen Dateinamen.
Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.Option Explicit
Sub Hyperlinziel_tauschen()
Dim strNeuerHyperlink As String
Dim hypZelle As Hyperlink
Dim intSheets As Worksheet
strNeuerHyperlink = "C:\Eigene Dateien\Deine Datei.xlsx"
For Each intSheets In Sheets
For Each hypZelle In intSheets.Hyperlinks
hypZelle.Address = strNeuerHyperlink
Next
Next
End Sub
In der Zeile
strNeuerHyperlink = "C:\Eigene Dateien\Deine Datei.xlsx"
musst Du den Pfad und den Dateinamen anpassen.
Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf
meiner HP in der
Rubrik Anleitungen und dort dann in der
Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.
Bei Fragen melde Dich.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 5 von Beverly vom 15.09.2021, 14:07 Options
Hi,
eine andere Möglichkeit zum Ersetzen der Hyperlinks im benutzten Bereich per VBA:
Sub hyperlink_inhalte_ersetzen()
Dim raZelle As Range
Dim strAdresse As String
For Each raZelle In Worksheets("Tabelle1").UsedRange
If raZelle.Hyperlinks.Count > 0 Then
strAdresse = Replace(raZelle.Hyperlinks(1).Address, ".xls", ".xlsx")
raZelle.Hyperlinks.Add anchor:=raZelle, Address:=strAdresse, TextToDisplay:=Replace(raZelle.Value, ".xls", ".xlsx")
End If
Next raZelle
End Sub
Bis später,
Karin
Antwort 6 von Knochenmark vom 15.09.2021, 14:14 Options
Thanks @ all
Das das so schnell geht hätte ich nicht gedacht! Spitze
Knochenmark