Einzelnen Beitrag anzeigen

Amateurprofi

Registriert seit: 17. Nov 2005
Ort: Hamburg
1.077 Beiträge
 
Delphi XE2 Professional
 
#4

AW: Word VBA Zeile zum oberen Rand scrollen

  Alt 29. Jun 2023, 11:20
Danke Ralf.
Ist leider nicht das, was ich suche.
Ich möchte nicht zum Anfang des Dokuments springen, das wäre ja mit Ctrl-Pos1 leicht zu machen.
Was ich möchte ist, das die Zeile, in der das Eingabe Caret steht, so gescrollt wird, dass diese Zeile am oberen Rand des Fensters steht.

Hintergrund:
Ich habe z.Z. ein Dokument mit > 700 Seiten, das als Source für den Microsoft Help Workshop dient.
In dem Dokument sind Links, die auf eine bestimmte Seite des Dokuments verweisen.
So ein Link besteht aus einem Text der aus dem Titel einer Seite, gefolgt von der Id der Seite, besteht.
Hierbei ist der Teil des Textes, den den Seitentitel zeigt, als unterstrichen formatiert, der Teil der die Id der Seite zeigt, ist als hidden formatiert.
Wenn das Caret in solch einem Link steht, kann ich mit einem der Macros in der Vorlage (wird mit Alt-G aufgerufen) zu der Seite springen.
Leider erscheint diese dann i.d.R. als unterste Zeile im angezeigten Bereich des Dokuments.
Was ich möchte ist, dass die erste Zeile der "angesprungenen" Seite als oberste Zeile im angezeigten Bereich des Dokuments steht.
Ich habe mal mein Template für Help-Files angehängt.

Meine aktuelle Notlösung ist
Code:
Sub ScrollToTop()
   Selection.Move Unit:=wdLine, Count:=10
   Selection.Move Unit:=wdLine, Count:=-10
End Sub
Angehängte Dateien
Dateityp: zip Help.zip (56,0 KB, 0x aufgerufen)
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
  Mit Zitat antworten Zitat