Textmarken füllen(II) |
|
Das Ändern von Text in einer (geschlossenen) Textmarke sollte eigentlich kein großes Problem darstellen. Aber leider zeigt hier VBA eine seiner Schwächen: Beim Ändern oder Füllen eines Textmarkenbereiches wird die Textmarke gelöscht. Beispiel: Activedocument.Bookmarks("Test").Range.Text="Neuer Text" Beim Ausführen dieser Anweisung wird aber die Textmarke gelöscht. Um das Löschen der Textmarke zu vermeiden, muss man sich mit einem kleinen Trick behelfen: If oDoc.Bookmarks.Exists(strBMName) Then Set rng = oDoc.Bookmarks(strBMName).Range rng.Text = strBMText oDoc.Bookmarks.add strBMName, rng End If In eine Funktion gekapselt erfolgt der Aufruf mit Angabe des Dokumentes (als Objektverweis), des Textmarken-Namens und des neuen Textmarken-Inhalts. Function fkt_ReplaceBookmarkText(oDoc As Document, strBMName As String, strBMText As String) Dim rng As Range If oDoc.Bookmarks.Exists(strBMName) Then Set rng = oDoc.Bookmarks(strBMName).Range rng.Text = strBMText oDoc.Bookmarks.add strBMName, rng Set rng = Nothing End If End Function Ein Anwendungsbeispiel, in dem über ein UserForm alle Textmarken (auch verborgene) angezeigt und bequem geändert werden können, folgt demnächst. |
Besucher: 2 online | 40 heute | 3639 diesen Monat | 2151333 insgesamt | Seitenaufrufe: 114 | Letzte Änderung: 02.08.2006 | © 2001-18 Christian Freßdorf | ||||
Es ist durchaus denkbar, daß der Krieg der Vater aller Dinge ist - der Vater aller Menschen ist er garantiert nicht. Werner Schneyder |
powered by phpCMS and PAX |