Seite 1 von 1
Die Markierung einer Zeile nach dem Kopieren aufheben
Verfasst: So 29. Mär 2020, 14:26
von Wolfgang
Moin!
Ich habe ein Makro aufgezeichnet, dass an eine Tabelle eine neue Zeile fügt, welche die Formatierungen und Formeln der letzten Zeile enthält. Welchen Befehl kann ich am Ende des Makros anhängen, damit die gestrichelte Linie, die beim Kopieren entsteht, wieder verschwindet? Gibt es so etwas wie ein "unselectall"?
Re: Die Markierung einer Zeile nach dem Kopieren aufheben
Verfasst: So 29. Mär 2020, 16:22
von mikele
Hallo,
am Ende einfach ESC drücken.
Wozu eigentlich ein Makro? Zeile Markieren (ein Klick), Zeilen Kopieren (eine Tastenkombi), eine Zeile nach unten , Zeile einfügen (eine Tastenkombi).
Re: Die Markierung einer Zeile nach dem Kopieren aufheben
Verfasst: So 29. Mär 2020, 17:15
von Wolfgang
Der Makro soll mit einer Schaltfläche verknüpft werden. Es sollen auch nur die Formeln und Formatierungen kopiert werden.
Schaltfläche klicken: 1 Aktion mit definierten Schritten -> maximal 1 Möglichkeit für Fehler durch den Benutzer.
Konventioneller Weg: mind. 5 Aktionen nötig -> mindestens 5 Möglichkeiten für Fehler durch den Benutzer.
Das "ESC" hatte ich zwar noch als Teil des Makro aufgezeichnet, aber das reicht anscheinend nicht. Am Ende des Makros ist immer noch die Selektionslinie sichtbar.
Re: Die Markierung einer Zeile nach dem Kopieren aufheben
Verfasst: So 29. Mär 2020, 19:22
von mikele
Hallo,
wie sieht das Makro aus?
Re: Die Markierung einer Zeile nach dem Kopieren aufheben
Verfasst: So 29. Mär 2020, 19:51
von Wolfgang
Recht primitiv, aber wirksam.
Code: Alles auswählen
sub neue_zeile
rem thiscomponent.lockControllers
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 args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "Sel"
args2(0).Value = false
dispatcher.executeDispatch(document, ".uno:GoToStart", "", 0, args2())
rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "Sel"
args3(0).Value = false
dispatcher.executeDispatch(document, ".uno:GoToEndOfData", "", 0, args3())
rem ----------------------------------------------------------------------
dim args4(0) as new com.sun.star.beans.PropertyValue
args4(0).Name = "Sel"
args4(0).Value = true
dispatcher.executeDispatch(document, ".uno:GoToStartOfRow", "", 0, args4())
rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())
rem ----------------------------------------------------------------------
dim args6(1) as new com.sun.star.beans.PropertyValue
args6(0).Name = "By"
args6(0).Value = 1
args6(1).Name = "Sel"
args6(1).Value = false
dispatcher.executeDispatch(document, ".uno:GoDown", "", 0, args6())
rem ----------------------------------------------------------------------
dim args7(0) as new com.sun.star.beans.PropertyValue
args7(0).Name = "Sel"
args7(0).Value = false
dispatcher.executeDispatch(document, ".uno:GoToStartOfRow", "", 0, args7())
rem ----------------------------------------------------------------------
dim args8(5) as new com.sun.star.beans.PropertyValue
args8(0).Name = "Flags"
args8(0).Value = "FNT"
args8(1).Name = "FormulaCommand"
args8(1).Value = 0
args8(2).Name = "SkipEmptyCells"
args8(2).Value = false
args8(3).Name = "Transpose"
args8(3).Value = false
args8(4).Name = "AsLink"
args8(4).Value = false
args8(5).Name = "MoveMode"
args8(5).Value = 4
dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, args8())
rem ----------------------------------------------------------------------
dim args9(0) as new com.sun.star.beans.PropertyValue
args9(0).Name = "Sel"
args9(0).Value = false
dispatcher.executeDispatch(document, ".uno:GoToStartOfRow", "", 0, args9())
rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:TerminateInplaceActivation", "", 0, Array())
rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Cancel", "", 0, Array())
rem thiscomponent.unlockControllers
end sub