2
www.ChF-Online.de  

Textbausteine verwenden

   Neuigkeiten
   API-Aufrufe in VBA
   VBA2HTML
   Word
   Word-VBA
aktiv aktiv Verschiedenes
 Dateiname ohne Endung
 Dokumentstrukturanzeige
 Fenster anordnen
 Fensterliste
 Fensterliste (II)
 Kalender erstellen
 Kommentarinformationen
 Lesezeichen
 Beliebigen Ordner öffnen
 Position der Einfügemarke
 Seitenanfang/-ende
 Shapes ansprechen
 Sicherheitskopien erstellen
 Word-Startparameter
 Word-Startparameter II
 Startordner "Bild einfügen"
 Tags finden u. bearbeiten
 Tags finden/bearbeiten (II)
 Text2WordArt
aktiv  Textbausteine verwenden
 Textmarken (I)
 Textmarken (II)
 Überschrift zu Textmarke
 VBA-Konverter
 Wasserzeichen
 Zeichen tauschen
 Feld-Arbeiten
 Form-Sachen
 Menü-/Symbolleisten
 VBA und Lotus Notes
 VBA und Mail
 Inside VBAIDE
 Von Word nach Outlook
 Fix-und-Fertiges/Projekte
   Word2007 (RibbonX)
   Word2010 (RibbonX)
   Outlook-VBA
   Links zu VB(A)
   DocToHelp
   Netport Express XL
   Astronomie
   Gästebuch
   Volltextsuche
   Sitemap
   Buch:Word-Programmierung
   Impressum & Kontakt
   Datenschutzerklärung
Getestet unter Word2000  
Makro/Datei speichern
Print

Wenn man in Dokumenten immer wieder die selben Texte verwendet, drängen sich die Autotext geradezu auf und haben auch ihren Sinn. Will man jedoch einen Text aus vorhandenen Bausteinen so zusammensetzen, dass bei Änderungen nur die Bausteine geändert werden müssen und die Änderungen automatisch in den anderen Dokumenten übernommen werden, dann sind die Autotexte nicht mehr erste Wahl.
Eine Möglichkeit, die ich hier vorstellen möchte, ist die Verwendung von Textbausteinen, die in einzelnen Dokumenten gesammelt werden und bei Bedarf in die jeweiligen Dokumente als Link eingebunden werden, z.B. bei der Erstellung von mehreren sehr ähnlichen Handbüchern mit identischen Passagen.
Hierbei geht es nicht um das Importieren kompletter Dokumente, sondern um im Dokument markierter Textmarken.

Die zentrale Funktion in dem Makropaket ist das Einfügen einer Textmarke strTextmarke aus einem bestimmten Dokument FileName an der Stelle der Eingabemarke:

Selection.InsertFile FileName:=strFile, _
  Range:=strTextmarke, _
  ConfirmConversions:=False, _
  Link:=True, _
  Attachment:=False 

Um das Einfügen und Erstellen der Textbausteine zu vereinfachen, werden die Namen der verwendeten, geschlossenen Textmarken in einer gleichlautenden INI-Datei im Dokumentverzeichnis gespeichert. Wenn nun Textbausteine importiert werden sollen, wird erst die INI-Datei eingelesen und die enthaltenen Textmarken werden in eine Auswahlliste eingelesen. Sobald ein Eintrag in der Auswahlliste markiert wird, wird der entsprechende Textbaustein aus der Originaldatei an der Eingabemarke als Verknüpfung eingefügt.

Textbaustein-Symbolleiste

Das Makropaket umfasst folgende Funktionen, die innerhalb einer eigenen Symbolleiste zur Verfügung gestellt werden:

  • Speichern der Textmarken eines Dokumentes
  • Importieren einer INI-Datei mit den Textmarkennamen
  • Übersichtsanzeige der importierbaren Textbausteine
  • Auswahlliste zur Übernahme von Textbausteinen

Bausteine speichern

Textbausteine speichernBeim Speichern der Textbausteine werden alle im aktiven Dokument enthaltenen geschlossenen Textmarken, das sind Textmarken, die einen Bereich umschließen, in einem Dialogfenster aufgelistet. Dabei werden neben dem verwendeten Namen auch die ersten 26 Zeichen des Inhalts der Textmarke angezeigt.
Mit einem Mausklick auf den Eintrag wird der jeweilige Textbaustein markiert bzw. wird die Markierung wieder aufgehoben. Über die Schaltfläche [Bausteine speichern] werden die Namen der Textmarken in einer INI-Datei gespeichert. Ist die Datei mit den Textbausteinen noch nicht gespeichert, wird ein entsprechender Hinweis eingeblendet. Wichtig ist auch, dass der Name der INI-Datei dem des Dokumentes entspricht und sie im selben Verzeichnis gespeichert wird, da darüber die Zuordnung erfolgt. Nach dem Speichern wird unterhalb der Übersicht der Dateipfad der INI-Datei und somit des Ursprungsdokumentes angezeigt.

Bausteine importieren

Textbausteine importierenÜber das Symbol "Textbaustein importieren" wird das Dialogfenster zum Öffnen einer Datei angezeigt. Über dieses Fenster wird die INI-Datei der zu importierenden Textbausteine ausgewählt und geöffnet. Die in der ausgewählten Datei zur Verfügung stehenden Textbausteine werden anschließend in der Auswahlliste aufgeführt.
Sobald ein Eintrag in der Liste ausgewählt wird, wird der zugehörige Textbaustein aus der Ursprungsdatei an der Stelle eingefügt, an der sich die Eingabemarke gerade befindet. Dabei wird standardmäßig der Textbaustein nur als Link eingefügt. Soll der Text dauerhaft eingebunden werden, hebt man die Verlinkung (Eingabemarke in den Textbausteinbereich bewegen) entweder über die Tastenkombination <Strg><Shift><F9> auf oder ändert im Makro die Link-Eigenschaft auf False.

Selection.InsertFile FileName:=strFile, _
  Range:=strTextmarke, _
  ConfirmConversions:=False, _
  Link:=False, _
  Attachment:=False 

Übersicht der Bausteine

Textbausteine importierenBeim Import einer INI-Datei werden in der Auswahlliste nur die Namen der angegebenen Textmarken angezeigt. Um einen (kurzen) Überblick über die Textbausteine zu erhalten, werden über das Symbol "Übersicht der Textbausteine" in einem Fenster die zur Verfügung stehenden Textbausteine mit ihrem Namen und den ersten 28 Zeichen angezeigt. Damit erhält man einen Überblick, über die Textbausteine. Zusätzlich wird unterhalb der Übersicht der Dateipfad der INI-Datei und somit des Ursprungsdokumentes angezeigt.

Will man Textbausteine aus verschiedenen Dateien verwenden, müssen die zugehörigen INI-Dateien bei Bedarf jeweils wieder geöffnet werden.
Dieses komfortabler zu gestalten könnte eine Erweiterungsmöglichkeit für dieses Makro sein.


 Besucher: 0 online  |  0 heute  |  0 diesen Monat  |  2225135 insgesamt | Seitenaufrufe: 16   Letzte Änderung: 05.02.2009 © 2001-18 Christian Freßdorf
  Es ist dem Untertanen untersagt, den Maßstab seiner beschränkten Einsicht an die Handlungen der Obrigkeit anzulegen.
Kurfürst Friedrich Wilhelm von Brandenburg
 powered by phpCMS and PAX