Seite 2 von 2

Re: Macro von der Kommandozeile ausführen und Resultat speic

Verfasst: Mo, 07.02.2011 08:07
von Axel Richter
Hallo rivella,

der Vollständigkeit wegen:
rivella hat geschrieben:Ich habe einfach im Verzeichnis /usr/lib/openoffice/basis-link/share/basic/Gimmicks/ die Datei CSVinsert.xba erstellt und dort den Makrocode aus der entsprechenden Windowsdatei eingefügt. Reicht das oder muss ich das Makro in OO noch irgendwo anmelden?
Nein, das reicht nicht.
1. Es gibt dort zunächst das Problem der Pfade. Bei mir (ubuntu) ist der Pfad nämlich /opt/openoffice.org/basis3.2/share/basic/Gimmicks oder /opt/openoffice.org3/basis-link/share/basic/Gimmicks.
2. Es gibt in den Library-Verzeichnissen noch je eine Datei script.xlb. Dort muss der Makroname, hier also CSVinsert, auch noch eingetragen werden. Meine sieht dann so aus:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE library:library PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "library.dtd">
<library:library xmlns:library="http://openoffice.org/2000/library" library:name="Gimmicks" library:readonly="false" library:passwordprotected="false">
<library:element library:name="GetTexts"/>
<library:element library:name="Userfields"/>
<library:element library:name="ChangeAllChars"/>
<library:element library:name="AutoText"/>
<library:element library:name="ReadDir"/>
<library:element library:name="CSVinsert"/>
</library:library>

viele Grüße

Axel

Re: Macro von der Kommandozeile ausführen und Resultat speic

Verfasst: Mo, 07.02.2011 14:12
von rivella
@Axel
Vielen Dank! Ich hatte gestern vergessen zu erwähnen, dass ich auch die Datei script.xlb entsprechend modifiziert habe. Wenn ich dann den Aufruf über die Kommandozeile mache, bleibt OO einfach hängen. Eine Datei test.csv.ots wird nicht erzeugt.

Ich versuche jetzt, das Problem anders zu lösen; evtl. mit PHP. Die Bibliothek ods-php ist ein guter Ansatz, liefert mir aber einen out-of-memory Fehler.

Ich überlege mir etwas und berichte dann im Erfolgsfall :)

Bis dann
rivella

Re: Macro von der Kommandozeile ausführen und Resultat speic

Verfasst: Mo, 07.02.2011 21:25
von Axel Richter
Hallo,

wie ich feststellen konnte, beherrscht OpenOffice die Microsoft Spreadsheet XML. Damit ist es einfacher als mit dem Manipulieren der content.xml eines ODS-Archives möglich, Workbooks mit Spreadsheets zu erstellen. Das sogar mit dem netten Nebeneffekt, dass Excel diese Dateien auch öffnen kann.

Beispieldatei anliegend. In der Datei ist *kein* ODS-Archiv, sondern reines XML. Wenn die Datei mit dem Typ .ods versehen wird, dann öffnet sie das System auch per Doppelklick mit OOo-Calc.
Referenz: http://msdn.microsoft.com/en-us/library ... 10%29.aspx.

viele Grüße

Axel