Seite 1 von 1
Welche Programmiersprache soll ich für LO.calc-Makros lernen
Verfasst: So 3. Mär 2013, 12:56
von LORI
Kenne mich in xl und VBA einigermaßen gut aus (sonst in NICHTS am Computer), aber Star-Basic erscheint mir etwas umständlich?
(laienhafter Eindruck von Code-Beispielen hier)
Besser Java, Python, php oder was sonst? (Der Recorder sollte auf dieser Sprache funktionieren!).
Falls wichtig: Ich benutze LibO 3.5 auf Windows XP.
Ist für irgendeine Sprache ein VBA-Konverter zu erwarten?
(Ich musste schon einmal eine umfangreiche Sammlung aus Lotus-123 umschreiben auf VBA-deutsch(xl5) und dann nochmals auf VBA-englisch mit damals noch sehr mangelhaftem Konverter, falls vermeidbar: wie?)
Anm.: Bin nicht allzuoft hier und hasse dauernde Benachrichtigungen, bitte etwas Geduld!
Re: Welche Programmiersprache soll ich für LO.calc-Makros le
Verfasst: So 3. Mär 2013, 17:07
von karolus
Hallo
Falls deine 'Programmierkünste' darin bestehen, Vba-code aufzuzeichnen, kannst du bei Basic bleiben - ansonsten empfehle ich rein subjektiv Python.
Karolus
Re: Welche Programmiersprache soll ich für LO.calc-Makros le
Verfasst: So 3. Mär 2013, 21:24
von LORI
karolus hat geschrieben:...'Programmierkünste' darin bestehen, Vba-code aufzuzeichnen...empfehle ich rein subjektiv Python
erst mal danke für die Empfehlung! Könntest Du noch irgendeine
Begründung nachliefern?
Und kann ich das kostenlos irgendwo runterladen?
Ich hab schon recht
komplizierte Makros in VBA geschrieben, die ich gerne in LibO weiter nutzen würde, aber sowohl für die richtige Syntax als auch für Umfeld-Schlüsswelwürter/-Objekte greife ich immer wieder aufs Aufzeichnen zurück, weil die Hilfe oft nicht ausreicht.
Ein Beispiel: Berechnung von Molekulargewichten in auch komplizierten Formeln, zB. Ni(CN)2 x Aq oder (NH4)4[Fe(CN)6] x 3H2O (also Unterscheidung von Gruppenindices wie hier (CN)2 oder (NH4)4 und Gruppenfaktoren wie ... x 3H... in Interaktion mit einer xl-Element-/Gruppen-Tabelle).
kleineres Beispiel: ein Makro, das zwischen aktuellem Eintrag und einem Eintrag beliebig weit oberhalb die leeren Zellen dazwischen mit
interplolierten Werten füllt
Aber eben für solche komplizierteren Gebrauchsmakros möchte ich die
richtige Sprache wählen und nicht nach einem Jahr wieder alles umschreiben müssen, weil ääätsch-ungeeignete Sprache!
Wo könnte ich da noch weiter nachfragen?
Re: Welche Programmiersprache soll ich für LO.calc-Makros le
Verfasst: Mo 4. Mär 2013, 00:23
von balu
Hallo LORI,
Könntest Du noch irgendeine Begründung nachliefern?
Ich bin wohl nicht Karolus, aber wir beide kennen uns schon eine Weile und ich kann mir deshalb sehr gut denken was er jetzt dazu sagen würde:
"Python ist schneller als Basic. Und sehr vieles lässt sich in Python kürzer Programmieren."
So, oder so ähnlich. Hab ich recht Karolus?
Ich selber habe noch keine Erfahrung mit Python, aber Karolus hat das in einem anderen Forum schon sehr oft angewendet, Beispiel:
Gukki hier.
Und kann ich das kostenlos irgendwo runterladen?
Warum?
Ist doch schon in LO vorhanden. Aber genau so gut in OOo und AOO. Also is nix mit extra downloaden

.
Wo könnte ich da noch weiter nachfragen?
Nicht Fragen, sondern gukki gukki machen. Hier mal ein paar Links.
Englisch
Deutsches Tutorial
Deutsches Forum
Python de. Bitte nicht abschrecken lassen das dort am Anfang von der Versionsnr. 2.5 die rede ist, aktuell ist glaube ich noch immer die 2.6.1.
Hilft dir das weiter?
Gruß
balu
Re: Welche Programmiersprache soll ich für LO.calc-Makros le
Verfasst: Mo 4. Mär 2013, 07:50
von gogo
Wenn Du in VBA einigermaßen sattelfest bist, dann wird Dir Starbasic nicht weiter schwer fallen - seit dem es die neue Version von XRay gibt ist die Inspektion von Objekten richtig einfach und flott. Der Rest ist selbsterklärend, oder ... wie in jeder anderen Programmiersprache auch: gewöhnungsbedürftig.
Starbasic wird immer ein gut integrierter Teil von LO bleiben, allerdings kann es sein, dass es irgendwann mal LO nicht mehr gibt, und Du auf einen anderen Fork der Open-Office-Fmilie migrieren musst ... und das könnte ein Problem sein, wenn sich die APIs zu weit voneinander entfernt haben.
Mit Python wärest Du da auf alle Fälle auf der sicheren Seite, außerdem ist Python ja schon fast überall implementiert, schnell, genau und zuverlässig - wenn Du also was Zukunftsträchtiges lernen willst, dann ist Python vermutlich das Richtige für Dich. Was noch dazukommt: im Naturwissenschaftlichen Umfeld ist die Python-Affinität sehr hoch, das hat vor allem damit zu tun, dass die Sprache eine ganze Reihe von Datentypen und Methoden bietet die sich für die dort vorherrschenden Modelle gut eignen.
Zu Guter Letzt: Vergiss das Aufzeichenen von Makros in LO - aus dem "Dispatcher-Code" kannst Du für die Programmierung in LO nur lernen, dass Du ihn nicht gebrauchen kannst (oder besser gesagt: fast nicht). Anders als beim VBA-Recorder (der "umständlichen, aber richtigen" Code aufzeichnet) werden hier nämlich quasi Menübefehle in Serie aufgezeichnet und über eine Bridge zur UNO ("Dispatcher") abgewickelt. Schon der Einbau einer einfachen Schleife kann zu den wunderlichsten Ergebnissen führen. - ! You have been warned !
Re: Welche Programmiersprache soll ich für LO.calc-Makros le
Verfasst: Mo 4. Mär 2013, 09:51
von karolus
Hallo
Ein wichtiges Detail wäre noch hinzuzufügen:
Mit der noch ganz frischen Version LO4.0 wird auch das mitgelieferte Python von ehemals Version 2.6 auf die neue 3er Serie angehoben.
Python3 ist nicht mehr voll abwärtskompatibel für Sachen die unter 2.6 geschrieben wurden.
Hier zum Beispiel hab ich (noch) nicht herausgefunden was geändert werden muss damit die Erweiterung mit LO4.0 läuft.
Karolus
Re: Welche Programmiersprache soll ich für LO.calc-Makros le
Verfasst: Di 5. Mär 2013, 02:37
von LORI
danke Euch allen. Muss mich in die Links erst mal noch reinvertiefen.
So nach dem ersten Eindruck tendiere ich dazu, mich auf meine alten Tage nochmal auf das für mich völlig neue Python einzulassen.
(ohne Eure Ratschläge hätt ich mich wahrscheinlich für Java entschieden...).