von mostpatiently » Fr, 25.05.2012 16:37
Hallo an alle,
ich hab zwar eifrig gesucht aber im Internet leider nichts gefunden, deshalb meine Frage (Bitte) an dieser Stelle: Ich habe im OrdnerC:/Daten eine Datei namens "Belegung", hier ein Tabellenblatt "Belegung1". Auf diesem Tabellenblatt befindet sich von A3 bis I1000 eine mit SVERWEIS kreierte Liste mit Namen. Diese Liste soll mit einem Makro kopiert werden und auf dem selben Blatt wieder eingefügt werden bei AI3 und zwar mittels Rechtsklick "Inhalte einfügen", Auswahl "Text", "Zahlen"und "Datum", um den Inhalt der aktuellen Ausgangsliste zu archivieren. Das Makro habe ich schon erstellt mithilfe der Makro-aufzeichnen-Funtion. Ich hätte aber gerne ein "richtiges", selbst geschriebenes Makro in OpenOffice.orgBasic, da mir das aufgezeichnete Makro fehleranfällig erscheint. Kann mir jemand helfen?
Hier das aufgezeichnete Makro:
sub Makro6
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 = "$A$3:$J$1000"
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 = "$A$3"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args3())
rem ----------------------------------------------------------------------
dim args4(0) as new com.sun.star.beans.PropertyValue
args4(0).Name = "ToPoint"
args4(0).Value = "$AI$3"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args4())
rem ----------------------------------------------------------------------
dim args5(5) as new com.sun.star.beans.PropertyValue
args5(0).Name = "Flags"
args5(0).Value = "SVD"
args5(1).Name = "FormulaCommand"
args5(1).Value = 0
args5(2).Name = "SkipEmptyCells"
args5(2).Value = false
args5(3).Name = "Transpose"
args5(3).Value = false
args5(4).Name = "AsLink"
args5(4).Value = false
args5(5).Name = "MoveMode"
args5(5).Value = 4
dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, args5())
end sub
Vielen Dank
Mostpatiently
Hallo an alle,
ich hab zwar eifrig gesucht aber im Internet leider nichts gefunden, deshalb meine Frage (Bitte) an dieser Stelle: Ich habe im OrdnerC:/Daten eine Datei namens "[i]Belegung[/i]", hier ein Tabellenblatt "[i]Belegung1[/i]". Auf diesem Tabellenblatt befindet sich von A3 bis I1000 eine mit SVERWEIS kreierte Liste mit Namen. Diese Liste soll mit einem Makro kopiert werden und auf dem selben Blatt wieder eingefügt werden bei AI3 und zwar mittels Rechtsklick "[i]Inhalte einfügen[/i]", Auswahl "[i]Text[/i]", "[i]Zahlen[/i]"und "[i]Datum[/i]", um den Inhalt der aktuellen Ausgangsliste zu archivieren. Das Makro habe ich schon erstellt mithilfe der Makro-aufzeichnen-Funtion. Ich hätte aber gerne ein "richtiges", selbst geschriebenes Makro in OpenOffice.orgBasic, da mir das aufgezeichnete Makro fehleranfällig erscheint. Kann mir jemand helfen?
Hier das aufgezeichnete Makro:
sub Makro6
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 = "$A$3:$J$1000"
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 = "$A$3"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args3())
rem ----------------------------------------------------------------------
dim args4(0) as new com.sun.star.beans.PropertyValue
args4(0).Name = "ToPoint"
args4(0).Value = "$AI$3"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args4())
rem ----------------------------------------------------------------------
dim args5(5) as new com.sun.star.beans.PropertyValue
args5(0).Name = "Flags"
args5(0).Value = "SVD"
args5(1).Name = "FormulaCommand"
args5(1).Value = 0
args5(2).Name = "SkipEmptyCells"
args5(2).Value = false
args5(3).Name = "Transpose"
args5(3).Value = false
args5(4).Name = "AsLink"
args5(4).Value = false
args5(5).Name = "MoveMode"
args5(5).Value = 4
dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, args5())
end sub
Vielen Dank
Mostpatiently