[gelöst] Vorlage über Button ändern

Das Textverarbeitungsprogramm

Moderator: Moderatoren

Schwedenbitter
**
Beiträge: 47
Registriert: So, 25.06.2006 13:03
Wohnort: Finsterwalde, Brandenburg

[gelöst] Vorlage über Button ändern

Beitrag von Schwedenbitter »

Ich arbeite viel mit verschiedenen Vorlagen und möchte das gern vereinfachen. Bislang wähle ich die Vorlagen immer so aus, dass ich im Menü "Datei" auf "Neu" und dann auf "Vorlagen und Dokumente" klicke. Anschließend wähle ich meine Vorlage aus. Immerhin merkt sich der Writer schon, in welchem Vorlagenverzeichnis ich beim letzten Mal war. Trotzdem hätte ich es gern noch komfortabler. Hierzu meine Frage:

Gibt es eine Möglichkeit, das Laden einer neuen Vorlage über ein Button in das Menü aufzunehmen?

Ich habe schon darüber nachgedacht, es mit der Methode zum Öffnen zu versuchen, die in der OpenOffice.org Basic FAQ vorgeschlagen wird. Allerdings habe ich es nicht ausprobiert und weiß nicht, ob man das auch auf Vorlagen anwenden kann. Außerdem wüsste ich gern, ob es für Basic auch eine Variable gibt, mit der man gleich das Standardverzeichnis für Vorlagen in OpenOffice anspringen kann. Schließlich hätte ich gern, dass sich meine dann gerade verwendete Vorlage in Luft auflöst, weil ich diese nicht mehr brauche.

Ich weiß das sind gleich drei Wünsche auf einmal. Aber früher gabe es für sowas Kinderüber******** :D
Zuletzt geändert von Schwedenbitter am Do, 09.11.2006 11:35, insgesamt 1-mal geändert.
OpenOffice.org 2.0.2 (stable)
OpenOffice.org 2.0.3 (update am 06.07.2006)
...
OpenOffice.org 4.1.1 (seit August 2014)
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Beitrag von komma4 »

ich arbeite mit einer Schaltfläche, die -mit dem richtigen Makro verknüpft- mir ein neues Dokument nach meiner Vorlage erstellt:

Code: Alles auswählen

Sub newCalc

Dim FileProperties(0) As New com.sun.star.beans.PropertyValue
FileProperties(0).Name = "AsTemplate"
FileProperties(0).Value = true

url = ConvertToURL("/zentrale/firma/vorlagen/webvorlage/newCalc.stc")
oNewCalc = StarDesktop.loadComponentFromURL(url,"_blank", 0, FileProperties())

oDocInfo = oNewCalc.DocumentInfo

oDocInfo.Title = "Calc Vorlage"

' oDocInfo.Theme = "?"

sString = "OpenOffice.org Calc Vorlage"
oDocInfo.Keywords = sString

' common part
SUB_setDesc(oDocInfo)


' erlaubt das Schliessen ohne Speichern
oNewCalc.Modified = FALSE 

End Sub


Sub SUB_setDesc(oDocInfo as Object)
sString = "(c) 2006 Winfried Rohr " & CHR(10) & _
	"Erstellt für XXXX" & CHR(10) & _
	"OpenOffice.org 2.0" & CHR(10)
oDocInfo.Description = sString

End Sub
Hilft Dir das weiter?
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
Schwedenbitter
**
Beiträge: 47
Registriert: So, 25.06.2006 13:03
Wohnort: Finsterwalde, Brandenburg

Beitrag von Schwedenbitter »

Recht herzlichen Dank komma4! Ich habe den Quelltext gekürzt und es funktioniert:

Code: Alles auswählen

Sub New_Protokoll
   Dim FileProperties(0) As New com.sun.star.beans.PropertyValue 
   FileProperties(0).Name = "AsTemplate" 
   FileProperties(0).Value = true 
   url = ConvertToURL("C:\Dokumente und Einstellungen\Administrator\Anwendungsdaten\OpenOffice.org2\user\template\Test.ott") 
   oNewDoc = StarDesktop.loadComponentFromURL(url,"_blank", 0, FileProperties()) 
   oNewDoc.Modified = FALSE 
End Sub
Allerdings suche ich noch immer nach einer Möglichkeit, das Verzeichnis für das jeweilige Benutzerprofil als Variable zu übergeben. Unter Windows selbst geht das mit %USERPROFILE% und im Hilfetext habe ich den Ausdruck {user} entdeckt. Ich habe auch schon alles möglich ausprobiert. Bis jetzt muss ich nämlich für jede einzelne Vorlage auf den Rechnern mit jeweils anderen Benutzern die Vorlagen von Hand anpassen. Das ist sehr mühsehlig und wenn eine Änderung der Vorlage nötig wird, muss ich wieder alles anpassen.
Ich habe schon im Forum gesucht aber ich habe nichts gefunden :(

Hat jemand eine Idee?
OpenOffice.org 2.0.2 (stable)
OpenOffice.org 2.0.3 (update am 06.07.2006)
...
OpenOffice.org 4.1.1 (seit August 2014)
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag von Stephan »

im Hilfetext habe ich den Ausdruck {user} entdeckt.
meinst Du sowas:

Code: Alles auswählen

Sub Main
x = CreateUnoService("com.sun.star.util.PathSubstitution") 
msgbox x.substituteVariables("$(user)", true) 
End Sub


Gruß
Stephan
Schwedenbitter
**
Beiträge: 47
Registriert: So, 25.06.2006 13:03
Wohnort: Finsterwalde, Brandenburg

Beitrag von Schwedenbitter »

meinst Du sowas:
Genau.

Ich habe aber wieder ein Problem entdeckt! Leider funktionieren in dem mittels Makro erstellten Dokument keine Makros mehr :(
OpenOffice.org 2.0.2 (stable)
OpenOffice.org 2.0.3 (update am 06.07.2006)
...
OpenOffice.org 4.1.1 (seit August 2014)
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag von Stephan »

Ich habe aber wieder ein Problem entdeckt! Leider funktionieren in dem mittels Makro erstellten Dokument keine Makros mehr
ein Problem das schon mehrfach Tjema hier im Forum war, beispielsweise Hier:
viewtopic.php?t=8290&highlight=macroexecmode



Gruß
Stephan
Antworten