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

Forumthread: Hyperlink durch Makro ändern

Hyperlink durch Makro ändern
25.02.2009 15:23:24
Danomat
Hallo Leute,
folgendes Problem:
Ich habe in einer Excel Datei in Spalte N Hyperlink Verweise auf andere Daten in einer anderen Datei.
z.B.
G:\Dokumente\Berichtswesen\Test.xls
Diese Test Datei erhält für jeden Monat ein eigenes Arbeitsblatt (z.B. Januar). Die Daten stehen aber immer in der gleichen Zelle.
In meiner Übersicht habe ich in der Zelle C2 den aktuellen Monat. Ändere ich diesen, so möchte ich durch das starten eines Makros das er alle Hyperlinks in Spalte N auf den Monat in Zelle C2 ändern, Beispiel:
Hyperlink alt:
G:\Dokumente\Berichtswesen\[Test.xls]Januar'!$F$73
Hyperlink neu:
G:\Dokumente\Berichtswesen\[Test.xls]Februar'!$F$73
bzw.
G:\Dokumente\Berichtswesen\[Test.xls]WIE CELLE C2'!$F$73
funktioniert das?
Vielen Dank im Voraus
Gruß
Daniel
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
=HYPERLINK(...) Formel nicht VBA!
25.02.2009 15:37:14
Renee
Hi Daniel Excel Profi,
Warum benutzt du nicht =HYPERLINK Formel, da kannste das Ganze doch völlig variabel gestalten?
GreetZ Renée
AW: Hyperlink durch Makro ändern
25.02.2009 15:39:00
ede
Hallo Daniel,
versuchs mal mit der Funktion Hyperlink()!
Beispiel:
=HYPERLINK("G:\Dokumente\Berichtswesen\[Test.xls]"&C2&"'!$F$73"; "G:\Dokumente\Berichtswesen\[Test.xls]"&C2&"'!$F$73")
Gruss
Anzeige
AW: Hyperlink durch Makro ändern
25.02.2009 17:12:28
Danomat
Sorry hat leider nicht so geklappt.
Wo liegt der Fehler?
=HYPERLINK("G:\Dokumente\Berichtswesen\Monatsabschluss\Einkaufsberichtswesen\Kennzahlen (2. Seite) \Monatlicher Export aus Monarch\Test\[VW1.xls]"&C2&"'!F73)
Das Makro hat leider auch nicht funktioniert.
:-(
AW: Hyperlink durch Makro ändern
25.02.2009 17:30:08
ede
Hallo nochmal,
=HYPERLINK("G:\Dokumente\Berichtswesen\Monatsabschluss\Einkaufsberichtswesen\Kennzahlen (2. Seite) \Monatlicher Export aus Monarch\Test\[VW1.xls]" & C2 &"'!F73"; "Deine Texte")
In C2 muss der Monatsname als Text stehen, nicht als formatiertes Datum!!!!!!!!
Ansonsten schau mal in der Hilfe zu dieser Formel nach, da wird Dir auch geholfen!
Gruss
Anzeige
AW: Hyperlink durch Makro ändern
25.02.2009 15:40:17
Daniel
Hi
so vielleicht.

Sub HyperlinksÄndern()
Dim HyL As Hyperlink
Dim MonatNeu As String
Dim MonatAlt As String
MonatNeu = Range("C2").Value
For Each HyL In Range("N:N").Hyperlinks
MonatAlt = Left(HyL.SubAddress, InStr(HyL.SubAddress, "!") - 1)
HyL.SubAddress = Replace(HyL.SubAddress, MonatAlt, MonatNeu)
HyL.TextToDisplay = Replace(HyL.TextToDisplay, MonatAlt, MonatNeu)
next
End Sub


das Blatt mit den Hyperlinks muss aktiv sein.
Gruß, Daniel
ps nicht getestet

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Hyperlink in Excel durch Makro ändern


Schritt-für-Schritt-Anleitung

  1. Öffne deine Excel-Datei und stelle sicher, dass sich die Hyperlinks in Spalte N befinden.
  2. Gib den gewünschten Monat in Zelle C2 ein. Dieser Monat wird später in den Hyperlinks verwendet.
  3. Öffne den VBA-Editor:
    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  4. Füge ein neues Modul hinzu:
    • Klicke mit der rechten Maustaste auf "VBAProject (deineDatei.xlsx)" und wähle Einfügen > Modul.
  5. Kopiere und füge den folgenden Code ein:

    Sub HyperlinksÄndern()
       Dim HyL As Hyperlink
       Dim MonatNeu As String
       Dim MonatAlt As String
       MonatNeu = Range("C2").Value
       For Each HyL In Range("N:N").Hyperlinks
           MonatAlt = Left(HyL.SubAddress, InStr(HyL.SubAddress, "!") - 1)
           HyL.SubAddress = Replace(HyL.SubAddress, MonatAlt, MonatNeu)
           HyL.TextToDisplay = Replace(HyL.TextToDisplay, MonatAlt, MonatNeu)
       Next
    End Sub
  6. Schließe den VBA-Editor und kehre zu Excel zurück.
  7. Führe das Makro aus:
    • Drücke ALT + F8, wähle HyperlinksÄndern und klicke auf Ausführen.

Häufige Fehler und Lösungen

  • Fehler: Hyperlinks werden nicht geändert.

    • Stelle sicher, dass das Arbeitsblatt mit den Hyperlinks aktiv ist, bevor du das Makro ausführst.
  • Fehler: Zelle C2 enthält ein Datum anstelle eines Textes.

    • Der Monatsname muss als Text eingegeben werden. Überprüfe, ob C2 als Text formatiert ist und die richtige Monatsbezeichnung enthält.
  • Fehler: Das Makro funktioniert nicht.

    • Überprüfe den VBA-Code auf Syntaxfehler und stelle sicher, dass alle Hyperlinks in Spalte N korrekt formatiert sind.

Alternative Methoden

Eine Alternative zur Verwendung eines Makros ist die Verwendung der =HYPERLINK(...)-Funktion in Excel. Diese ermöglicht es dir, Hyperlinks dynamisch zu erstellen, indem du den Monat direkt in die Formel einfügst. Hier ein Beispiel:

=HYPERLINK("G:\Dokumente\Berichtswesen\[Test.xls]" & C2 & "'!$F$73", "Link zu " & C2)

Diese Methode ist einfacher und erfordert keine VBA-Kenntnisse.


Praktische Beispiele

Angenommen, du möchtest die Hyperlinks für die Monate Januar bis Dezember ändern. In Spalte N könntest du Hyperlinks wie folgt haben:

  • G:\Dokumente\Berichtswesen\[Test.xls]Januar'!$F$73

Nach der Eingabe von "Februar" in Zelle C2 und der Ausführung des Makros wird der Hyperlink automatisch auf:

  • G:\Dokumente\Berichtswesen\[Test.xls]Februar'!$F$73

geändert. Das Makro ist besonders hilfreich, wenn du regelmäßig die Monate ändern musst.


Tipps für Profis

  • Verwende die =HYPERLINK-Funktion, wenn du keine komplexen Änderungen durchführen musst. Sie ist einfacher und schneller.
  • Teste dein Makro in einer Kopie deiner Datei, um ungewollte Änderungen zu vermeiden.
  • Füge Fehlerbehandlungen in dein VBA-Skript ein, um mögliche Laufzeitfehler abzufangen.

FAQ: Häufige Fragen

1. Wie kann ich das Makro anpassen, um mehrere Spalten zu ändern?
Du kannst den Bereich Range("N:N") anpassen, indem du z.B. Range("N1:N10") verwendest, um nur die ersten 10 Zellen zu verändern.

2. Was tun, wenn Excel beim Ausführen des Makros abstürzt?
Überprüfe den VBA-Code auf Fehler und stelle sicher, dass keine endlosen Schleifen vorhanden sind. Arbeite auch mit einer Sicherheitskopie deiner Datei.

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