WEiß ich nicht genau, wenn dann sollte sowas in der Biblibliothel namens "tools" der OOo-Makrobibliotheken enthalten sein.Ich bin schon ewig auf der Suche nach einer gescheiten Funktion, die mir das Verzeichnis als string liefert, in dem die aktuell geöffnete *.ods gespeichert is.
Bsp:
geöffnete Datei: c:\test\test.ods
dann soll der string "c:\test\" liefern
Bei MS EXCEL liefert "ActiveWorkbook.Path" den gewünschten string. Daher die Frage ob es bei OpenOffice eine ähnliche Funktion gibt.
Ich habe schon über ein Objekt mit "thiscomponent.url" versucht an die Information zu gelangen, was prinzipiell auch möglich ist.
Ich halts allerdings für überflüssig sich von solchen Dingen abhängig zu machen, die leicht versagen wenn die entsprechenden Bibliotheken nicht installiert sind, viel verlässslicher ist doch da Ganze durch einfache Stringmanipulation zu lösen:
Code: Alles auswählen
x = ThisComponent.URL
i = 0
Do
i = i + 1
x1 = Right(x, i)
Loop While Left(x1,1)<>"/"
pfad = ConvertFromURL(LEFT(x, LEN(x)-i+1))
[/quote]Jedoch liefert Calc für jeden Funktionsaufruf eine Fehlermeldung, wenn man das Dokument geschlossen hat und dann erneut öffnet. Danach kann man alles neu laden und es klappt auch. Doof ist nur das man vorher zig Fehlermeldungen wegklicken musste...[/[uote]
Ich kenne leider keine Möglichkeit das an dieser Stelle, bei der speziellen Information zu vermeiden wenn Du eine benutzerdefinioerte Funktion benutzt.
Lösung ist auf die Tabellenfunktion ZELLE() zurückzugreifen und die benötigte Information abzutrennen.
Wenn Du deen Buchlink in meiner Signatur anklickst und die dort erhältliche Leseprobe herunterlädst findest Du in Kapitel 6.6 beginnend ab Seite 242 ein ausführliches Beispiel was zeigt wie Du den Dateinamen antrennst, Du mußt es nur 'umdrehen' und den Pfad abtrennen.
Die erhaltene Lösung funktioniert zuverläsig und wenn Du sie häufiger brauchst kannst Du Ihre einen Namen geben (Einfügen-Namen) und hast dann einen kurzen Ausdruck verfügbar wenn Du das Ganze in der Standarddokumentvolrlage speicherst.
Gruß
Stephan