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 | 2212034 insgesamt | Seitenaufrufe: 6 | Letzte Änderung: 02.08.2006 | © 2001-18 Christian Freßdorf | ||||
Gesunder Menschenverstand ist Instinkt. Genug davon ist Genie. George Bernhard Shaw, 1856-1950, irischer Schriftsteller |
powered by phpCMS and PAX |