Hallo Dieter,
[Diskussion über die Frage, wo Word 2003 seine
Formatierungsinformationen speichert und wie Formatierungen und
Formatvorlagen zusammenhängen.]
Anbei der Versuch einer Beschreibung über die Technik:
Ich habe mir noch mal das Objektmodell von Word näher angeschaut.
ActiveDocument.Paragraphs(k).Range.Characters.Item(m) ist ein Range-
Objekt. Darin sind alle Formatierungen für das m-te Zeichen im k-ten
Absatz gespeichert. Das Range-Objekt wiederum hat wirklich viele
Eigenschaften mit denen man das Aussehen des Zeichens beeinflussen
kann.
Die grundsätzliche Idee bleibt für mich bestehen: Wenn ich einfach nur
formatiere, dann setze ich händisch die Eigenschaften für das Zeichen.
Fettdruck, Kursiv, Farbe, etc.
Natürlich kann ich auch einen Bereich im Dokument markieren und dann
formatieren. Jedoch bewirkt dies dann nur, dass viele Character.Items
gleichzeitig händisch paramentriert werden.
Bei der Zuweisung einer Formatvorlage findet aber wahrscheinlich noch
folgender zusätzlicher Vorgang statt: Den Range-Objekten für jedes
betrachteten Zeichen wird eine Zeichenkette hinterlegt. Diese enthält
den Namen der jeweils aktuellen Formatvorlage. Ich nehme an, dass Word
automatisch auch noch die entsprechenden Zeichenformatierungen
einstellt.
Das wesentliche Merkmal ist jedoch die Vergabe dieser Zeichenkette.
Ich gehe davon aus, dass Word auf der Grundlage dieser Zeichenkette in
seinen ActiveDocument.Styles(m) Objekten nachschaut, um die von dort
die Formatierungen zu kopieren.
Und jetzt kommt der Clou: Über diesen String weiß also das einzelne
Zeichen, auf welcher Formatvorlage es basiert. Und wenn Du nun die
Format_vorlage_ änderst, dann kriegen das alle so formatierten Zeichen
mit.
Also hast Du nur einmal die Vorlage verändert. Aber alle Zeichen, die
auf dieser Vorlage basieren, folgen automatisch der neuen
Formatierung, die ja in der Formatvorlage abgespeicher wurde.
Das war jetzt ein technischer Erklärungsversuch. Den müsste jetzt
jemand mal (1) verifizieren und (2) didaktisch so aufbereiten, dass er
auch von Leuten verstanden wird, die sich nicht mit dem Objektmodell
von Word auseinander gesetzt haben.
Grüße,
Thomas