Bookmarks-Inhalte löschen

20/03/2009 - 14:56 von Egon Heller | Report spam
Hallo,
ich habe in meinem Dokument Bookmarks stehen, die über eine UserForm
gespeist werden.
Leider muss ich feststellen, dass bei Wiederholung die alten Werte nicht
überschrieben werden,
sondern verschoben werden.
Um Abhilfe zu schaffen, war mein Versuch die Verwendung von:
ThisDocument.Bookmarks("Projekt").Range.Text = "" und anschließend,
ThisDocument.Bookmarks("Projekt").Range.Text = UserForm1.TextBox1.Value.
Das bedeutet, dass die UserForm-Verwendung nicht überschreibt.

Gibt dafür eine Lösung?

Gruß
Egon
 

Lesen sie die antworten

#1 Bernhard Sander
20/03/2009 - 16:13 | Warnen spam
Hallo Egon,

ich habe in meinem Dokument Bookmarks stehen, die über eine UserForm
gespeist werden.
Leider muss ich feststellen, dass bei Wiederholung die alten Werte nicht
überschrieben werden,
sondern verschoben werden.
Um Abhilfe zu schaffen, war mein Versuch die Verwendung von:
ThisDocument.Bookmarks("Projekt").Range.Text = "" und anschließend,
ThisDocument.Bookmarks("Projekt").Range.Text = UserForm1.TextBox1.Value.
Das bedeutet, dass die UserForm-Verwendung nicht überschreibt.


Das Problem liegt in dieser Zeile:
ThisDocument.Bookmarks("Projekt").Range.Text = UserForm1.TextBox1.Value
Hier wird der Text merkwürdigerweise nur HINTER der Textmarke eingefügt und
nicht IN die Textmarke. Beim wiederholten Zuweisen wird daher der vorher mal
zugewiesene Text nicht überschrieben sondern es wird der neue Text zwischen der
Textmarke und dem vorherigen Text eingefügt.

Abhilfe: Die Textmarke nach dem Einfügen des Textes dem eingefügten Text neu
zuweisen.
Marke = "Projekt"
If ActiveDocument.Bookmarks.Exists(Marke) Then
Set bm = ActiveDocument.Bookmarks(Marke).Range
bm.Text = UserForm1.TextBox1.Value
bm.Bookmarks.Add (Marke)
End If

Gruß
Bernhard Sander

Ähnliche fragen