Libre Office

Zellinhalte verschieben vs. copoieren

Alles zur Programmierung im LibreOffice.
Antworten
MaximilianWe
Beiträge: 40
Registriert: So 7. Aug 2011, 22:28

Zellinhalte verschieben vs. copoieren

Beitrag von MaximilianWe » Sa 3. Sep 2011, 12:28

wenn ich Zellinhalte copieren will, wäre z.B. der Code

Code: Alles auswählen

sub copy (copyfrom as string, copyto as string)
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 = "ToPoint"
args1(0).Value =copyfrom

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())

rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "ToPoint"
args3(0).Value = copyto
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args3())

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Paste", "", 0, Array())

rem ----------------------------------------------------------------------


end sub
will ich aber die Inhalte verschieben ( Ursprungszellen sind dann leer) ergibt die Makroaufzeichnung keinen sinncollen Code, weil zwar die Ursprungsadresse als args1 erscheint, aber keine Zieladresse.
Wie müsste der Code richtig aussehen?

Mfg
Max

komma4
Beiträge: 185
Registriert: Sa 13. Aug 2011, 10:01
Wohnort: Chonburi Thailand Asia
Kontaktdaten:

Re: Zellinhalte verschieben vs. copoieren

Beitrag von komma4 » Sa 3. Sep 2011, 13:27

MaximilianWe hat geschrieben:Wie müsste der Code richtig aussehen?
Nehme "Ausschneiden" statt "Kopieren"

Code: Alles auswählen

dispatcher.executeDispatch(document, ".uno:Cut", "", 0, Array())
Cheers
Winfried
aktuell: openSuse 13.1 mit LO 4.3.7.2
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als Extension)

MaximilianWe
Beiträge: 40
Registriert: So 7. Aug 2011, 22:28

Re: Zellinhalte verschieben vs. copoieren

Beitrag von MaximilianWe » Sa 3. Sep 2011, 15:16

hallo Winfrid,

prima, danke für die schnelle Aufklärung.

Max

Open Office
Antworten