ich habe mir ein Makro aufgezeichnet und als Button in die Symbolleiste gelegt mit dem ich - egal wo ich mich gerade in meiner LO Datei befinde - auf ein bestimmtes Sheet mit einer bestimmten Zoomstufe (80%) wechseln kann. Klappt so weit wunderbar. Wenn ich allerdings in besagtem Sheet irgendwo hin scrolle, es so lasse, das Sheet wechsle und wieder das Makro ausführe komme ich zwar in der gewünschten Zoomstufe im gewünschten Sheet an, allerdings zu dem Bereich zu dem ich das letzte Mal hingescrollt bin. Wie kann ich im Makro eine bestimmte Scroll-Position definieren bzw. einen bestimmten Bereich des Sheets festlegen? Mit der Aufzeichnung ist es nicht möglich, der Recorder zeichnet im Gegensatz zu Zoomstufen keine Scroll-Bewegungen auf.
Arbeite mit LO 4.3.5.2 und OSX 10.7.5
Freue mich auf Hilfe.
Code: Alles auswählen
sub SpringezuTabelle
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Nr"
args1(0).Value = 3
dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args1())
rem ----------------------------------------------------------------------
dim args2(4) as new com.sun.star.beans.PropertyValue
args2(0).Name = "CharPreviewFontName.StyleName"
args2(0).Value = ""
args2(1).Name = "CharPreviewFontName.Pitch"
args2(1).Value = 2
args2(2).Name = "CharPreviewFontName.CharSet"
args2(2).Value = -1
args2(3).Name = "CharPreviewFontName.Family"
args2(3).Value = 5
args2(4).Name = "CharPreviewFontName.FamilyName"
args2(4).Value = "Liberation Sans"
dispatcher.executeDispatch(document, ".uno:CharPreviewFontName", "", 0, args2())
rem -------------------------------------------------------------------
dim args3(3) as new com.sun.star.beans.PropertyValue
args3(0).Name = "ZoomSlider.CurrentZoom"
args3(0).Value = 80
args3(1).Name = "ZoomSlider.SnappingPoints"
args3(1).Value = Array()
args3(2).Name = "ZoomSlider.SvxMinZoom"
args3(2).Value = 20
args3(3).Name = "ZoomSlider.SvxMaxZoom"
args3(3).Value = 600
dispatcher.executeDispatch(document, ".uno:ZoomSlider", "", 0, args3())
dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args1())
end sub