🙏 Bitte helfen Sie uns das LibreOffice Forum zu erhalten. 🙏
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.

🍀 Wir hoffen auf Ihre Unterstützung - vielen Dank!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Fehlerhafte Makros

Installation / Betrieb / Probleme unter Mac OS
Antworten
Zumo
Beiträge: 12
Registriert: Sa 21. Sep 2013, 15:12

Fehlerhafte Makros

Beitrag von Zumo » Sa 21. Sep 2013, 16:20

Hallo Community,

ich bin vor kurzem von MS-Office (PC) auf LibreOffice 4.1.1.2 (Mac) umgestiegen und kämpfe nun mit ein paar Problemen, welche mir die Arbeit sehr erschweren. Der Übersichtlichkeit halber teile ich meine Fragen auf mehrere Themen auf.

Ich verwende in Calc aufgezeichnete Makros, welche sehr simpel sind, hier ein Beispiel:

Code: Alles auswählen

ub Rechnung_neu
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 = 1

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

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

rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "Nr"
args3(0).Value = 2

dispatcher.executeDispatch(document, ".uno:JumpToTable", "", 0, args3())

rem ----------------------------------------------------------------------
dim args4(2) as new com.sun.star.beans.PropertyValue
args4(0).Name = "DocName"
args4(0).Value = "Rechnungen"
args4(1).Name = "Index"
args4(1).Value = 1
args4(2).Name = "Copy"
args4(2).Value = true

dispatcher.executeDispatch(document, ".uno:Move", "", 0, args4())

rem ----------------------------------------------------------------------
dim args5(0) as new com.sun.star.beans.PropertyValue
args5(0).Name = "Name"
args5(0).Value = "Rechnung"

dispatcher.executeDispatch(document, ".uno:RenameTable", "", 0, args5())

rem ----------------------------------------------------------------------
dim args6(0) as new com.sun.star.beans.PropertyValue
args6(0).Name = "ToPoint"
args6(0).Value = "$B$16"

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


end sub
Im wesentlichen wird hier eine Tabelle gelöscht, eine weitere kopiert und umbenannt, welche die gelöschte Tabelle dann ersetzt (Rechnung wird gelöscht, Rechnung_blanko wird kopiert und wieder in Rechnung umbenannt).

Nach mehrfachem Gebrauch auf zwei (per BTSync) synchronisierten Macs funktionieren die Makros auf einmal nicht mehr, oder nicht vollständig. Das o. g. Makro löscht z. B. noch die Tabelle Rechnung, aber Rechnung_blanko wird nicht mehr kopiert, sondern in Rechnung umbenannt.

Bei einem weiteren Makro werden div. Zellen von einer Tabelle in eine andere kopiert, auch das funktioniert nicht mehr, es werden auf einmal ganz andere Zellen übernommen, obwohl sich an der Quell- und Zieltabelle nichts bewegt hat.

Nach meiner Einschätzung hat sich auch an den Makros sichtbar nichts verändert - ich bin hier einigermaßen ratlos. Warum verändert sich die Funktion der Makros ohne weiteres Zutun? Oder vielmehr: wie kann das verhindert werden?

Das ganze ist nun schon mehrfach passiert, am Anfang dachte ich noch an einen von mir verschuldeten Fehler beim Speichern und habe die Makros mehrfach aufgenommen (vorher alte Makros natürlich gelöscht), mittlerweile bin ich aber sicher, dass es nicht an einem Eingriff von mir liegt, evtl. liegt es auch an dem zweiten Problem (http://www.libreoffice-forum.de/viewtop ... 24&t=12468).

Vielen Dank für jedwede Hilfe.

EDIT: Wie in dem o. g. zweiten Thread von mir beschrieben, scheint das kopieren der Tabelle vom Tabellennamen abhängig zu sein: öffne ich eine Arbeitskopie (wg. der genannten Sperrung), oder benenne ich die Datei um, wird die Tabelle nicht mehr kopiert. Verschiebe ich hingegen die Calc-Datei in ein anderes Verzeichnis, klappt es mit dem Makro, welches die Tabelle kopiert, das kopieren der Zellen im zweiten Makro funktioniert leider immer noch nicht. Gretchenfrage: wieso sind interne Makros vom Dateinamen abhängig?


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten