' Aufruf des grundsätzlichen Services der OO_Api Set objServiceManager = WScript.CreateObject("com.sun.star.ServiceManager") ' Aufruf des Hauptfensters von OO Set objDesktop = objServiceManager.createInstance("com.sun.star.frame.Desktop") ' Parameter für das Laden einer CSV-Datei Dim args1(2) Set args1(0) = MakePropertyValue("FilterName", "Text - txt - csv (StarCalc)") Set args1(1) = MakePropertyValue("FilterOptions", "9,34,ANSI,0") '9 = Tab getrennt Set args1(2) = MakePropertyValue("Hidden", True) ' Laden einer CSV-Datei ' Pfad der Datei muss Slashs (/) statt Blackslashs (\) enthalten z.B. : c:/temp/sloffice/schueler.csv ' Die Umwandlung erfolg bei Schul-Office in Clarion. Sie kann aber auch im Script passieren. ' Wir wollten jedoch die Scripte klein halten und möglichst wenig Aufgaben vom Scripting-Host erledigen lassen (erscheint uns sicherer) Set objDocument = objDesktop.loadComponentFromURL("file:///c:/temp/sloffice/schueler.csv", "_blank", 0, args1) ' Parameter für das Speichern als ODS-Datei Dim args2(0) Set args2(0) = MakePropertyValue("FilterName", "calc8") ' Speichern als ODS-Datei ' Pfad der Datei muss ebenfalls Slashs (/) statt Blackslashs (\) enthalten z.B. : c:/sloffice/schueler.ods ' Sollte die ODS-Datei bereits vorhanden sein wird sie überschrieben. Es ist also nicht nötig, sie explizit zu löschen. objDocument.storeAsURL "file:///c:/sloffice/schueler.ods", args2 ' ODS-Datei schließen ! wichtig objDocument.close True ' Hauptfenster und OO schließen wenn möglich (wenn es nicht möglich ist, weil noch irgend ein anderes Fenster offen ist, ist es auch nicht schlimm) objDesktop.terminate ' Hilfsfunktion, die ein "oPropertyValue" zurück gibt Function MakePropertyValue(cName, uValue) Dim oPropertyValue Set oPropertyValue = objServiceManager.Bridge_GetStruct("com.sun.star.beans.PropertyValue") oPropertyValue.Name = cName oPropertyValue.Value = uValue Set MakePropertyValue = oPropertyValue End Function