Der Laufzeitfehler tritt auf, weil der Code versucht, auf den Pfad des Hyperlinks zuzugreifen, bevor überprüft wurde, ob tatsächlich ein Hyperlink in der betreffenden Zeile vorhanden ist. Um das Problem zu beheben, können Sie vor der Verwendung der Pfadvariable prüfen, ob die Zelle einen Hyperlink enthält, indem Sie den folgenden Code einfügen:
If Not Target.Hyperlinks.Count = 0 Then Pfad = Target.EntireRow.Hyperlinks(1).Address Pfad = Left(Pfad, InStrRev(Pfad, "\")) End If
Dies stellt sicher, dass der Code nur auf den Pfad des Hyperlinks zugreift, wenn tatsächlich ein Hyperlink in der Zelle vorhanden ist.
Eine weitere mögliche Ursache für den Laufzeitfehler könnte sein, dass der Code versucht, auf einen Bereich außerhalb des Tabellenblatts zuzugreifen. Um dies zu vermeiden, können Sie den Code ändern, um nur auf Änderungen in der Spalte U zu reagieren, indem Sie den folgenden Code am Anfang Ihrer Subroutine hinzufügen:
If Not Intersect(Target, Range("U:U")) Is Nothing Then
Dies stellt sicher, dass der Code nur auf Änderungen in der Spalte U reagiert und nicht auf Änderungen in anderen Teilen des Tabellenblatts.
Ich hoffe, das hilft Ihnen weiter!
|