Seite 1 von 1

Briefkopf beim Öffnen automatisch aktualisieren

Verfasst: Di, 04.03.2008 16:00
von giochips
Hallo zusammen,

ich hab mehrere Musterbriefe in unserer Firma erstellt. Der allgemeine Teil wie Name der Firma, Telefonnummern, Registernummern usw ist immer gleich. Lediglich der Text der verschiedenen Musterbriefe ist immer ein anderer.
Wenn sich nun z.B. Veränderungen im Vorstand ergeben o.ä. muß ich jeden Musterbrief entsprechend abändern!!

Hab mir folgendes gedacht: Ich erstelle einen Rahmen in jeden Musterbrief anstelle dieser Angaben. Beim Öffnen eines neuen Musterbriefes wird in den Rahmen der Inhalt einer anderen Datei geladen. Somit muß ich solche Angabenänderungen nur an dieser einen, zentralen Stelle ändern. Funktioniert soweit... ich schaffe es nur nicht in dem Makro das beim Öffnen ausgeführt wird den Text in genau diesen Rahmen zu laden!! Er lädt den Text immer in den ersten Rahmen auf der Seite, welcher eigentlich für die Anschrift des Empfängers gedacht ist.

Kann mir jemand sagen wie ich den Text mit in einen bestimmten Rahmen laden kann? Oder hat jemand ne bessere Idee solche Briefkopfangaben zentral zu pflegen??

Hier noch mein Makro:

Code: Alles auswählen

sub AutoMergeBriefkopf
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:InsertDoc", "", 0, Array())

rem ----------------------------------------------------------------------
dim args2(1) as new com.sun.star.beans.PropertyValue

args2(0).Name = "Name"
args2(0).Value = "file:///J:/Dokumente/OpenOffice/Briefkopf.odt"
args2(1).Name = "Filter"
args2(1).Value = "writer8"

dispatcher.executeDispatch(document, ".uno:InsertDoc", "", 0, args2())

end sub
Vielen Dank!!!
giochips

Re: Briefkopf beim Öffnen automatisch aktualisieren

Verfasst: Fr, 06.06.2008 10:39
von giochips
Weiß hier wirklich niemand Rat??????

Re: Briefkopf beim Öffnen automatisch aktualisieren

Verfasst: Fr, 06.06.2008 11:19
von giochips
Hab mittlerweile herausgefunden, dass der Text an der Stelle eingefügt wird, an der der Cursor beim Abspeichern des Dokuments stand!!

Es gibt doch bestimmt einen Makrobefehl mit dessen Hilfe ich den Cursor in einen Rahmen springen lassen kann!!??

Danke!

Re: Briefkopf beim Öffnen automatisch aktualisieren

Verfasst: Fr, 06.06.2008 11:30
von komma4
Das geht viel einfacher - und ohne Makros.


Speichere Deinen Briefkopf in einer beliebigen Tabelle.
Markiere den gesamten Inhalte, der übernommen werden soll >Einfügen>Bereich...


In Deinen Vorlagen fügst Du diesen Bereich wieder ein:

Einfügen>Bereich...>Verknüpfen
Spezifiziere Datei und Bereichsnamen. Voilà!


Funktioniert hier (Testrechner WinXP/OOo2.3.1)

Re: Briefkopf beim Öffnen automatisch aktualisieren

Verfasst: Fr, 06.06.2008 11:50
von giochips
Hi Winfried,

das war doch mal ne superschnelle und brauchbare Antwort!! Muß ja nicht alles komplizierter machen als es sein muß!! ;-)

Habs gleich mal ausprobiert. Klappt wunderbar!! Beim Öffnen der Vorlage wird immer gefragt ob die Verknüpfung aktualisiert werden soll. Kann ich das noch erzwingen? Das garnicht mehr nachgefragt wird?

Vielen Dank!!!!!!!!!!!!!!!!

Re: Briefkopf beim Öffnen automatisch aktualisieren

Verfasst: Fr, 06.06.2008 12:37
von giochips
Habs gefunden! In den Extras/Optionen, Writer/allgemein kann man einstellen ob Verknüpfungen immer, nie oder nach Nachfrage aktualisiert werden.

Also wieder einen Schritt weiter! :-)

Interessant wäre es jetzt noch diesen Inhalt, ähnlich wie bei Feldinhalten möglich, zu fixieren. D.h. Vorlage wird vom User geladen, Verknüpfung wird aktualisiert. User schreibt seinen Brief und speichert ihn ab. Wenn dieses gespeicherte Dokument nochmals geöffnet wird, soll keine Aktualisierung erfolgen.

Gruß

Re: Briefkopf beim Öffnen automatisch aktualisieren

Verfasst: Fr, 06.06.2008 13:43
von komma4
giochips hat geschrieben:soll keine Aktualisierung erfolgen.
Dann muss die Verknüpfung gelöst werden (Bearbeiten>Verknüpfungen...>Lösen)


Das geht dann auch mit BASIC (verknüpfen mit Ereignis: Dokument speichern) ... den nötigen Code habe ich aber gerade nicht zur Hand, irgendwas mit...

ThisComponent.getLinks().getByName( "Bereiche" ).getByName( "Bereich1|region" ).FileLink.FileURL= ""

Re: Briefkopf beim Öffnen automatisch aktualisieren

Verfasst: Do, 12.06.2008 08:42
von giochips
Wo finde ich denn eine Dokumentation über diese Syntax? Was ist Bereich und Bereich1|Region??

komma4 hat geschrieben:ThisComponent.getLinks().getByName( "Bereiche" ).getByName( "Bereich1|region" ).FileLink.FileURL= ""
Danke!!

Re: Briefkopf beim Öffnen automatisch aktualisieren

Verfasst: Do, 12.06.2008 09:24
von komma4
giochips hat geschrieben:Wo finde ich denn eine Dokumentation über diese Syntax? Was ist Bereich und Bereich1|Region??

Developer's Guide aus dem SDK


Die Namen des Bereichs, den ich in die Kopfzeile einfügte, wurden automatisch vergeben.
Herausgefunden mit XRAY
Andrews Macro-Dokument kennst Du auch...?

Hilft das weiter?