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: 1 online | 9 heute | 3121 diesen Monat | 2155672 insgesamt | Seitenaufrufe: 86 | Letzte Änderung: 02.08.2006 | © 2001-18 Christian Freßdorf | ||||
Wo kämen wir hin, wenn alle sagten, wo kämen wir hin, und niemand ginge, um einmal zu schauen, wohin man käme, wenn man ginge. Kurt Marti | powered by phpCMS and PAX |