Bereich durch einen anderen ersetzen

02/03/2009 - 11:21 von Ole Streicher | Report spam
Hallo,

ich möchte gerne einen bestimmten Textbereich per Macro durch einen
anderen erstzen. Mein Code dafür sieht so aus:

Sub ReplaceMyDoc
Dim oRNG As Range
Set oBM As Bookmark
If ActiveDocument.Bookmarks.Exists("MyDoc") Then
Set oRNG = ActiveDocument.Bookmarks("MyDoc").Range
oRNG.Delete
oRNG.InsertFile("MyDoc.xml")
ActiveDocuments.Bookmarks("MyDoc").Delete
Set oBM = ActiveDocument.Bookmarks.Add("MyDoc", oRNG)
End If
End Sub

Das Einsetzen wird auch wie gewünscht vorgenommen, aber offenbar wird
der Bereich nicht gelöscht/neu gesetzt. Wenn ich das Macro ein zweites
mal aufrufe, wird nicht der vorhandene Bereich überschrieben, sondern
die Datei einfach am Beginn eingefügt.

Warum ist das so und wie kann ich das àndern?

Viele Grüße

Ole
 

Lesen sie die antworten

#1 Thomas Gahler
02/03/2009 - 12:16 | Warnen spam
Hallo Ole


Das Einsetzen wird auch wie gewünscht vorgenommen, aber offenbar wird
der Bereich nicht gelöscht/neu gesetzt. Wenn ich das Macro ein zweites
mal aufrufe, wird nicht der vorhandene Bereich überschrieben, sondern
die Datei einfach am Beginn eingefügt.

Warum ist das so und wie kann ich das àndern?


Was dann bedeuten würde, dass deine Textmarke nicht dort gesetzt wird, wo du
gerne hàttest.

Ich habe nicht gross getestet, woran es liegt. Die nachstehenden Zeilen
haben bis jetzt den Text an einer Textmarke immer zuverlàssig ersetzt. Wird
sicher schnell auf .InsertFile angepasst sein.


Sub Demo1()
Dim cText As String
Dim oRNG As Range
Dim oBM As Bookmark
cText = "ABC"
If ActiveDocument.Bookmarks.Exists("Test") Then
Set oRNG = ActiveDocument.Bookmarks("Test").Range
oRNG.Text = cText
Set oBM = ActiveDocument.Bookmarks.Add( _
Name:="Test", _
Range:=oRNG)
End If
End Sub


Ich nehme mal an, dass du eine Textmarke hast, die im Dokument einen
[Bereich] und nicht nur eine ][Stelle einschliesst.
Könnte auch daran liegen dass du ein .Delet ausführst. Ich weiss es nicht
auf den ersten Blick


Thomas Gahler
MVP für Word
Co-Autor von »Microsoft Word-Programmierung.
Das Handbuch« (MS Press)


- Windows XP (SP3), Office XP (SP3)

Ähnliche fragen