Seite 1 von 1

Ein Calc-Dokument per Makro öffnen

Verfasst: Di, 22.06.2010 11:47
von arkadiuszpaluszek
Hallo mal wieder!

Bin auf folgendes Problem gestossen, per folgenden Code lade ich aus einem Writer - Dokument heraus eine Calc-Tabelle:

Code: Alles auswählen

Dim Doc as Object
Dim Url as String
Dim Dummy()
Url="file:///[b]K:/Jeffrey/[/b]DBZugang.ods"
Doc=StarDesktop.loadComponentFromURL(Url,[b]"_hidden"[/b],0,Dummy())
myDoc=Doc ' Hier greife ich auf die Calc-Tabelle zu um die Daten zu lesen
mysheet=mydoc.sheets(0)
mycell=mysheet.getcellbyposition(0,0)
mystring=mycell.string
msgbox ("Mystring ="+mystring)
Hierbei habe ich zwei Probleme:
1. Obwohl beim Laden "_hidden" angegeben wurde, wird das Dokumentfenster angezeigt, es ist sichtbar. Das sollte es doch nicht, oder??? Ich möchte, dfass man die Tabelle aus der ich Daten lese nicht sieht.
2. Problem mit der Url: Ich hätte gerne eine relative Url, die Pfadangabe könnte ja von PC zu PC variieren, wie kann ich in der Url angeben, dass die Datei im gleichen Ordenr gesucht werden soll, in welchem das aktuell geöffnete Dokument sich befindet?

Viele Grüße

Arek


Moderation,4: CODE-tags gesetzt

Re: Ein Calc-Dokument per Makro öffnen

Verfasst: Di, 22.06.2010 15:10
von komma4
1. der zweite Parameter ist der TargetFrameName, der Wert "_hidden" ist nicht gültig.
API-Referenz

Zum verdeckten Öffnen musst Du eine Eigenschaft setzen und mitgeben; suche mal nach HIDDEN im Forum - und Du wirst fündig.

2. nein, das geht nicht. Du musst immer eine voll-qualifizierte URL angeben.

Re: Ein Calc-Dokument per Makro öffnen

Verfasst: Di, 22.06.2010 15:22
von DPunch
Aloha

Zu Punkt 2:
Das ist natürlich machbar, aber eben nicht mit einem einfachen Zusatz ala "HIDDEN".
Du müsstest die URL des geöffneten Dokuments auslesen und den relativen Pfad hinten dran hängen.

Re: Ein Calc-Dokument per Makro öffnen

Verfasst: Di, 22.06.2010 15:24
von ykcim
Hallo,

wie schon gesagt der Parameter "_hidden" ist an der Stelle verkehrt.

Es geht über den Mediadescriptor:

Code: Alles auswählen

    url=converttourl("C:\test.sxw")
    dim myFileProp(0) as New com.sun.star.beans.PropertyValue
    myFileProp(0).name="Hidden"
    myFileProp(0).value=True
    oDocument = StarDesktop.loadComponentFromURL(url, "_blank", 0, myFileProp() )

mfg
Michael