Seite 1 von 1

[2.3.1] Feldbefehl 'Ordner'

Verfasst: Di, 14.10.2008 17:34
von Thomas D
Hallo!

Als Feldbefehl kann ich unter der Registerkarte "Dokument" den kompletten Pfad, sowie den Dateinamen vergeben. Gibt es allerdings auch eine Möglichkeit nur die Ordnerbezeichnung, in dem die Datei liegt, anzugeben?

Re: [2.3.1] Feldbefehl 'Ordner'

Verfasst: Di, 14.10.2008 17:55
von chrk
Hallo Thomas,
mit 2.1.4 und 3.0 hättest Du beim Feld "Dateiname" vier Formatoptionen: Dateiname/ohne Erweiterung, Pfad und Pfad/Dateiname.

Mit 2.3.1 kann ich nicht mehr dienen.

Re: [2.3.1] Feldbefehl 'Ordner'

Verfasst: Di, 14.10.2008 18:04
von Thomas D
Hallo!

Diese Felder habe ich eh, allerdings fehlt mir eines für den Ordner (also nicht den kompletten Pfad). Wäre es eventuell möglich, sich das aus dem Pfad herauszubasteln? ...

Re: [2.3.1] Feldbefehl 'Ordner'

Verfasst: Di, 14.10.2008 18:18
von chrk
Och, da habe ich Dich ja völlig mißverstanden.
Entschuldige.

Nein, nicht so einfach, die Felder kann man ja nur im Rahmen des Dialogs bearbeiten.

Mit Basic sollte das gehen, ob der übergeordnete Ordner als Eigenschaft direkt zugänglich ist, weiß ich nicht. Aber könnte zur Not den Pfad als String hernehmen und bis zum vorletzten Pfadtrenner herauskopieren.

Da musst Du mal allerdings mal im Basic-Forum fragen, ob Dir jemand ein Snippet anbieten kann.

Re: [2.3.1] Feldbefehl 'Ordner'

Verfasst: Di, 14.10.2008 18:55
von komma4
Für den EInsatz im Zellbereich kannst Du eine Formel verwenden:

Code: Alles auswählen

=ZELLE("filename";A1)
Das zeigt Dir (wenn die Datei mal gespeichert wurde!) bspw. protocol:///pfad/dateiname.ods#$Tabellenname
Nun kannst Du mit anderen Formeln [TEIL()] die relevanten Teile rausschneiden.


Möchtest Du den Ordnernamen woanders einsetzen, so bleibt nur Basic.

Re: [2.3.1] Feldbefehl 'Ordner'

Verfasst: Di, 14.10.2008 19:15
von chrk
komma4 hat geschrieben: Für den EInsatz im Zellbereich kannst Du eine Formel verwenden:

Äähhhh...Winfried...wir sind hier im Writer-Forum.

Thomas sucht wohl eine Lösung für Textdokumente.

Re: [2.3.1] Feldbefehl 'Ordner'

Verfasst: Mo, 03.11.2008 13:44
von Karolus
Hallo
Eine schnelle Lösung gibts nicht, aber:
Leg einen Feldbefehl an: ->andere->Variablen-Variable setzen: mit dem Namen:'Ordner' im Feld Wert 'irgendetwas' und dem Format 'Text'

verknüpfe folgendes Makro mit ->extras->Anpassen->Ereignisse->Dokument öffnen.

Code: Alles auswählen

sub ordner_einfuegen
  odoc = thiscomponent
  Dim Var as String
  Dim oTextfieldMaster As Object
  Dim oPropSet as Object
  Dim oDependentTextFields as Object
  Dim oXDependentTextField as Object
  Dim oTextFields as Object
' Die Variable wird über den festgelegten Namen, hier "Ordner", aufgerufen
  Var ="com.sun.star.text.FieldMaster.SetExpression.Ordner"
  oTextfieldMasters = oDoc.getTextFieldMasters()
  oPropSet = oTextfieldMasters.getByName(Var)
  oDependentTextFields = oPropSet.DependentTextFields
  oXDependentTextField = oDependentTextFields(0)

	apfad() = split(oDoc.url,"/")
	ordner = apfad(ubound(apfad())-1)
  
  oXDependentTextField.setPropertyValue("Content",ordner)
  odoc.textfields.refresh()
end sub
hier ausgeliehen und geändert
Kapitel Quelltext übernehmen

Gruß Karo