Öffnen von OO-Tabellen für Beginners

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Öffnen von OO-Tabellen für Beginners

Re: Öffnen von OO-Tabellen für Beginners

von turtle47 » Mo, 31.03.2008 22:06

Hallo Volker,

wie ist es den hiermit:

Code: Alles auswählen

Sub Datei_Oeffnen
Dim Arg() 
Dim oDoc As Object
	oDoc = thisComponent
	oController = oDoc.getCurrentController()
	sUrl = convertToURL("/Users/Volker/Documents/Datei.ods")
	vDoc=StarDesktop.loadComponentFromURL (sURL, "_blank", 63, Arg())
End Sub
Die Datei "Datei.ods"muss natürlich in dem Verzeichnis vorhanden sein!

Jürgen

Re: Öffnen von OO-Tabellen für Beginners

von vpetzold » Mo, 31.03.2008 19:09

...alle Änderungen haben nichts gebracht. Ich habe darauf hin ein Makro aufgezeichnet. Einfach das durchspielen, was ich machen wollte - eine bestimmte Datei öffnen.

sub openFile
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 ----------------------------------------------------------------------
rem dispatcher.executeDispatch(document, ".uno:Open", "", 0, Array())
end sub

Nur hat der Recorder nicht aufgezeichnet, welche Datei ich geladen habe. Also nichts mit URL etc. Auch wenn ich das Macro dann noch einmal ausführe, wird die Datei nicht geladen. Das ist nicht unbedingt ein Macro, was man nutzen kann.

Volker

Re: Öffnen von OO-Tabellen für Beginners

von Toxitom » Mo, 31.03.2008 09:31

Hey,
vpetzold hat geschrieben:dim myFileProp as Object
Karolus hat geschrieben:dort fehlten ↑die Klammerzeichen.
Nicht nur ;-) - dies dürfte so gar nicht funktionieren. Entweder das Objekt benennen-
dim myFileProp() as new com.sun.star.beans.PropertyValue
oder nur allgemein schreiben
dim myFileProp()

Gruss
Thomas

Re: Öffnen von OO-Tabellen für Beginners

von Karolus » So, 30.03.2008 22:19

Hallo
vpetzold hat geschrieben:
Sub DateiOeffnen

Dim Doc as Object
Dim url as String
url = "File:///Users/Volker/Documents/Datei.ods"
'ist die Schreibweise so richtig ? Unter Linux muss File klein geschrieben werden !
'besser ist in jedem Fall:
'url = converttourl("/Users/Volker/Documents/Datei.ods")
dim myFileProp() as Object
'dort fehlten ↑die Klammerzeichen.

Gruß Karo

Öffnen von OO-Tabellen für Beginners

von vpetzold » So, 30.03.2008 21:52

Hallo,

um bestimmte OO-Tabellendokumente zu bearbeiten steige ich gerade ein bei Starbasic. Hierfür habe ich mir auch schon eine Dokumentation von SUN für Starbasic (http://docs.sun.com/app/docs/doc/819-1326?a=load ) etwas durchgelesen.

Ich wollte nun anfangen eine bestehende Calc-Datei zu öffnen. Irgendwo muss man ja mal anfangen zu probieren. Hierfür habe ich die Beispiele aus der Docu genommen und in "NeoOffice" (ich arbeite mit MAC aber NeoOffice ist ja wohl nahezu identische mit OO).

Sub DateiOeffnen

Dim Doc as Object
Dim url as String
url = "File:///Users/Volker/Documents/Datei.ods"

dim myFileProp as Object
Doc = StarDesktop.loadComponentFromURL(url, "_blank", 0, myFileProp() )

end sub

Wenn ich das Script starte, erhalte ich folgende Fehlermeldung
BASIC-Laufzeitfehler.
Es ist eine Excaption aufgetreten
Type: com.sun.star.lang.IllegalArgumentExaption
Message: cannot coerce argument type during corereflection call


Was fehlt denn an meinem einfachen Script noch?
Kann ich die Dienste, wie Sie für Starbasic beschrieben sind (StarDesktop?), überhaupt für Open Office so nutzen? Oder wo bekomme ich eine ähnlich gute Beschreibung (auf deutsch) für OO?

Die Informationen zu StarBasic Programmierung hier im Forum habe ich schon durchgeschaut. Einige Links sind nicht aktuell und die anderen bringen mich nicht weiter.

Dank für nen kleinen Schubs zum Anfang.

Volker

Nach oben