wenn ich unten stehendes Makro anwende und per Hyperlink in Zeile 1001 springe passiert folgendes: Zeile 992:995 werden fixiert und die nächste Zeile ist 1001.
Ich möchte aber folgendes erreichen: Zeile 1001:1004 fixiert dann fortlaufend. Wobei es auch passieren kann, dass die Hyperlinkadresse auch 2-, 3-, 4- oder 5001 oder sogar noch höher lauten kann.
Wo ist der Fehler?
Viele Grüße
meilott
Sub MakroHyperlinkSprungImmerObenLinks()
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
With Target
Application.Goto Reference:=Worksheets(Left(.SubAddress, InStr(.SubAddress, „!“) - 1)). _
Range(Mid(.SubAddress, InStr(.SubAddress, „!“) + 1)), Scroll:=True
End With
End Sub
Sub Makro2()
’
’ Makro2 Makro
'Sub ZeileFixieren()
ActiveWindow.FreezePanes = False
Cells(ActiveCell.Row, ActiveCell.Column).Select
With ActiveWindow
.SplitColumn = 0
.SplitRow = 4
End With
ActiveWindow.FreezePanes = True
wenn ich unten stehendes Makro anwende und per Hyperlink in
Zeile 1001 springe passiert folgendes: Zeile 992:995 werden
fixiert und die nächste Zeile ist 1001.
das glaube ich nicht. Bei
Sub MakroHyperlinkSprungImmerObenLinks()
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
wird sich der Debugger melden. *annehm*
Und, unterhalb des Eingabefensters wird der pre-Tag erläutert.
wenn ich unten stehendes Makro anwende und per Hyperlink in
Zeile 1001 springe passiert folgendes: Zeile 992:995 werden
fixiert und die nächste Zeile ist 1001.
Auch mir ist nicht wirklich klar, wie Du das Makro ‚anwendest‘…, aber folgendes müsste IMO eigentlich ausreichend sein:
With Target
Application.Goto ActiveSheet.Range(Split(.SubAddress, "!")(1)), Scroll:=True
End With
ActiveWindow.FreezePanes = False
With ActiveWindow
.SplitColumn = 0
.SplitRow = 4
End With
ActiveWindow.FreezePanes = True
End Sub
kannst Du die Datei abrufen. Vieleicht hast Du ja die Lösung.
Du musst natürlich auch die Fenster-Teilung aufheben, wenn Du diese setzt, sonst kann das nichts werden…
Lösche deinen kompletten Code und verwende die folgenden Zeilen in Tabellenblatt 1:
Private Sub Worksheet\_FollowHyperlink(ByVal Target As Hyperlink)
With ActiveWindow
.FreezePanes = False
.SplitColumn = 0
.SplitRow = 0
End With
With Target
Application.Goto ActiveSheet.Range(Split(.SubAddress, "!")(1)), Scroll:=True
End With
With ActiveWindow
.SplitColumn = 0
.SplitRow = 4
.FreezePanes = True
End With
End Sub
Das Makro läuft so wie ich es mir vorgestellt habe.
Jedoch gibt es für mich nun ein weiteres Problem. Wird dieses Makro ein zweites mal in einem anderen Blatt der Arbeitsmappe kopiert, bekommt man beim Ausführen die Fehlermeldung „Laufzeitfehler 9 - Index liegt außerhalb des gültigen Bereichs“. Warum?
Das Makro läuft so wie ich es mir vorgestellt habe.
Na, das ist ja schon mal was.
Jedoch gibt es für mich nun ein weiteres Problem. Wird dieses
Makro ein zweites mal in einem anderen Blatt der Arbeitsmappe
kopiert, bekommt man beim Ausführen die Fehlermeldung
„Laufzeitfehler 9 - Index liegt außerhalb des gültigen
Bereichs“. Warum?
Gegenfrage, da deine Angaben zu unspezifisch ausfallen:
Wo genau - in welcher Zeile wird diese Meldung denn ausgworfen?
entschuldigung, aber Heute scheint nicht mein Tag zu sein.
In folgender Formel wird der Fehler ausgelöst.
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
With Target
Application.Goto Reference:=Worksheets(Left(.SubAddress, InStr(.SubAddress, „!“) - 1)). _
Range(Mid(.SubAddress, InStr(.SubAddress, „!“) + 1)), Scroll:=True
End With
End Sub
Wenn der Debugger geöffnet wird ist die Zeile markiert.
ich habe in 10 Jahren einiges an für mich interessante bzw. wichtige Unterlagen/Belege zusammengetrage und dieses in Excel(97), und einige Hundert Tabellenblätter, erfaßt. Im laufe der Zeit ist die Sache doch sehr Umfangreich, 12 MB groß, geworden. Das ganze in Excel (2007) ist jedoch nur ca. 4 MB groß und beinhaltet jetzt nur noch 8 Tabellenblätter. Es war jedoch einiges an Umstrukturirung erforderlich. Hatte in den 90er mal angefangen, das ganze mit RBase zu machen, aber nach einen Crash und der damit verbundenen Systemumstellung gefiel mir Excel besser.
Soviel zum Gebrauch.
Beide Makros funktionieren, wenn sie alleine im Arbeitsbatt sind. Irgendwie beissen oder stören sie sich.
Im Tabellenblatt 1 habe ich Sprungadressen, ohne Fixierung, nach Jahrgänge in Tabellenblatt 2. In dem Tabellenblatt 2 sind die Sprungadressen mit Fixierung für das Tabellenblatt 3 nach Themen und/oder Ablageinformationen. Die anderen Blätter enthalten Suchfuntion bzw. deren Darstellung.
Nochmals vielen Dank für deine Mühe und Verständnis.
Ich habe eben zum xtenmal die Testdatei aufgebaut und alles funktioniert. Keine Ahnung warum? Werde mir Morgen oer Übermorgen das Ganze noch mal in Ruhe anschauen.
Falls der Fehler nochmal auftaucht bzw wenn ich mit der Umstellung fertig bin, werde ich mich melden.
Ja, solches soll/kann vorkommen, das ist nichts Aussergewöhnliches…
Ich habe eben zum xtenmal die Testdatei aufgebaut und alles
funktioniert. Keine Ahnung warum? Werde mir Morgen oer
Übermorgen das Ganze noch mal in Ruhe anschauen.
Möglicherweise/vermutlich ist deine Original-Mappe korrupt geworden, was beim Entwickeln immer wieer vorkommt. Dann hilft meist ein Neu-Aufbau der Mappe.