Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: In Hyperlinks suchen und ersetzen

In Hyperlinks suchen und ersetzen
Wolfango
Hallo zusammen,
Ich habe eine Excel-Datei mit hunderten von Links die auf einzelne Word-Dokumente verweisen.
Im Zuge der Umstellung auf Office 2010 heißen die in den einzelnen Links angegebenen Dokumente nun nicht mehr *.doc sondern *.docx. Logischerweise funktionieren die Links nicht mehr.
Wie kann ich die vielen Links nun korrigieren? Mit der „Suchen-Ersetzen“-Funktion von Excel geht das leider nicht, da die enthaltenen Links hierbei nicht durchsucht werden.
Gibt es einen VBA-Code der auch in diesen HyperLinks sucht und ersetzt?
(oder vielleicht eine ganz andere Lösung?)
Danke und Gruß,
Wo.
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: In Hyperlinks suchen und ersetzen
14.06.2012 17:18:20
Erich
Hi Wolfgang,
probier mal

Option Explicit
Sub HypLiAkt()
Dim hyp As Hyperlink, intL As Integer
For Each hyp In ActiveSheet.Hyperlinks
intL = Len(hyp.Address)
If intL > 4 Then
If LCase$(Right(hyp.Address, 4)) = ".doc" Then
hyp.Address = Left(hyp.Address, intL - 3) & "docx"
' ------------------------------------------ geht auch mit Suchen/Ersetzen
intL = Len(hyp.TextToDisplay)
If intL > 4 Then
If LCase$(Right(hyp.TextToDisplay, 4)) = ".doc" Then _
hyp.TextToDisplay = Left(hyp.TextToDisplay, intL - 3) & "docx"
End If
End If
End If
Next hyp
End Sub
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Hyperlinks in Excel suchen und ersetzen


Schritt-für-Schritt-Anleitung

Um die Hyperlinks in deiner Excel-Datei zu aktualisieren, kannst du den folgenden VBA-Code verwenden. Dieser Code sucht nach Hyperlinks, die auf .doc-Dateien verweisen, und ersetzt sie durch .docx. Gehe folgendermaßen vor:

  1. Öffne die Excel-Datei, die die Hyperlinks enthält.
  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.
  3. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.
  4. Kopiere den folgenden VBA-Code in das Modul:
Option Explicit
Sub HypLiAkt()
    Dim hyp As Hyperlink, intL As Integer
    For Each hyp In ActiveSheet.Hyperlinks
        intL = Len(hyp.Address)
        If intL > 4 Then
            If LCase$(Right(hyp.Address, 4)) = ".doc" Then
                hyp.Address = Left(hyp.Address, intL - 3) & "docx"
                ' ------------------------------------------ geht auch mit Suchen/Ersetzen
                intL = Len(hyp.TextToDisplay)
                If intL > 4 Then
                    If LCase$(Right(hyp.TextToDisplay, 4)) = ".doc" Then _
                        hyp.TextToDisplay = Left(hyp.TextToDisplay, intL - 3) & "docx"
                End If
            End If
        End If
    Next hyp
End Sub
  1. Schließe den VBA-Editor und kehre zu Excel zurück.
  2. Drücke ALT + F8, wähle HypLiAkt aus und klicke auf Ausführen.

Mit diesem Code kannst du die Hyperlinks in Excel effizient suchen und ersetzen.


Häufige Fehler und Lösungen

  • Fehler 1: Der Code funktioniert nicht.

    • Lösung: Stelle sicher, dass du den Code korrekt eingefügt hast und dass du die richtige Excel-Datei geöffnet hast. Prüfe auch, ob die Hyperlinks tatsächlich auf .doc-Dateien verweisen.
  • Fehler 2: Einige Links werden nicht aktualisiert.

    • Lösung: Überprüfe, ob die Links die Endung .doc tatsächlich haben. Manchmal kann es zusätzliche Leerzeichen oder andere Zeichen geben.

Alternative Methoden

Falls du keinen VBA-Code verwenden möchtest, kannst du die Hyperlinks auch manuell aktualisieren. Gehe dazu wie folgt vor:

  1. Klicke mit der rechten Maustaste auf den Hyperlink.
  2. Wähle Hyperlink bearbeiten.
  3. Ändere die Endung von .doc auf .docx.

Diese Methode ist allerdings zeitaufwändiger, besonders bei vielen Links.


Praktische Beispiele

Angenommen, du hast folgende Hyperlinks in deiner Excel-Datei:

  • C:\Dokumente\Beispiel1.doc
  • C:\Dokumente\Beispiel2.doc

Nach der Ausführung des VBA-Codes sollten sie wie folgt aussehen:

  • C:\Dokumente\Beispiel1.docx
  • C:\Dokumente\Beispiel2.docx

Diese einfache Automatisierung spart dir viel Zeit bei der Umstellung auf Word 2010.


Tipps für Profis

  • Backup erstellen: Erstelle immer ein Backup deiner Excel-Datei, bevor du mit VBA arbeitest.
  • Testlauf: Führe den Code zuerst auf einer Kopie der Datei aus, um sicherzustellen, dass alles wie gewünscht funktioniert.
  • VBA-Fehlerbehebung: Nutze die Debugging-Tools im VBA-Editor, um mögliche Fehler zu identifizieren.

FAQ: Häufige Fragen

1. Kann ich den Code auch in einer älteren Excel-Version verwenden? Ja, der VBA-Code sollte auch in früheren Versionen von Excel funktionieren, solange die Hyperlink-Funktion unterstützt wird.

2. Was mache ich, wenn ich nur einige Links ändern möchte? Du kannst den Code anpassen, indem du Bedingungen hinzufügst, um nur bestimmte Links zu ändern, z.B. basierend auf dem Text in der Zelle oder dem spezifischen Link.

3. Gibt es eine Möglichkeit, die Links in einem Arbeitsblatt automatisch zu überprüfen? Ja, du kannst eine Schleife im VBA-Code hinzufügen, die alle Hyperlinks durchläuft und deren Gültigkeit überprüft.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige