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: 0 online | 0 heute | 0 diesen Monat | 2228573 insgesamt | Seitenaufrufe: 47 | Letzte Änderung: 02.08.2006 | © 2001-18 Christian Freßdorf | ||||
Die letzte Stimme, die man hören wird, bevor die Welt explodiert, wird die eines Experten sein, der sagt: "Das ist technisch unmöglich!" Sir Peter Ustinov |
powered by phpCMS and PAX |