Text von Textmarke löschen

07/05/2008 - 09:44 von Kerstin Schiebel | Report spam
Guten Morgen,

in einem geschützten Formular möchte ich die Eingabe eines Feldes in die
Kopfzeilen
schreiben.
In der Kopfzeile habe ich dazu eine Textmarke definiert. Das klappt auch
soweit.
Wie kann ich jetzt aber evtl. bereits vorhandenen Text, der zu die Textmarke
gehört,
vorher löschen. Bei einer Fehleingabe würde sonst auch der falsche Text in
der Kopfzeile
stehen.

Leider bin ich bisher nicht fündig geworden bei meiner Suche.
Danke und Gruß
Kerstin
__
Public Sub MerkenDocTitle()
Dim txtTitle As String
Dim adoc As Document

Set adoc = ActiveDocument

If adoc.Bookmarks.Exists("txtDocTitle") = True Then
txtTitle = adoc.FormFields("txtDocTitle").Result
Else
txtTitle = "txtDocTitle existiert nicht :-("
End If

If adoc.Bookmarks.Exists("txtDocTitleKopf") = True Then
'Dokumentenschutz aufheben
adoc.Unprotect

evtl. alten Text löschen


adoc.Bookmarks("txtDocTitleKopf").Range.Text = txtTitle
'Dokumentenschutz aktivieren
adoc.Protect Type:=wdAllowOnlyFormFields, NoReset:=True
Else
MsgBox "txtDocTitleKopf existiert nicht :-("
End If

End Sub
 

Lesen sie die antworten

#1 demlan
07/05/2008 - 11:05 | Warnen spam
On May 7, 9:44 am, "Kerstin Schiebel" wrote:
Guten Morgen,

in einem geschützten Formular möchte ich die Eingabe eines Feldes in die
Kopfzeilen
schreiben.
In der Kopfzeile habe ich dazu eine Textmarke definiert. Das klappt auch
soweit.
Wie kann ich jetzt aber evtl. bereits vorhandenen Text, der zu die Textmarke
gehört,
vorher löschen. Bei einer Fehleingabe würde sonst auch der falsche Text in
der Kopfzeile
stehen.

Leider bin ich bisher nicht fündig geworden bei meiner Suche.
Danke und Gruß
Kerstin
__
Public Sub MerkenDocTitle()
Dim txtTitle As String
Dim adoc As Document

Set adoc = ActiveDocument

If adoc.Bookmarks.Exists("txtDocTitle") = True Then
txtTitle = adoc.FormFields("txtDocTitle").Result
Else
txtTitle = "txtDocTitle existiert nicht :-("
End If

If adoc.Bookmarks.Exists("txtDocTitleKopf") = True Then
'Dokumentenschutz aufheben
adoc.Unprotect
> evtl. alten Text löschen
adoc.Bookmarks("txtDocTitleKopf").Range.Text = txtTitle
'Dokumentenschutz aktivieren
adoc.Protect Type:=wdAllowOnlyFormFields, NoReset:=True
Else
MsgBox "txtDocTitleKopf existiert nicht :-("
End If

End Sub



Hallo Kerstin,

des Ràtselslösung ist, dass die Textmarke um den Text in der Kopfzeile
gelegt wird. Der u.a. Code sollte Dir helfen :)

Public Sub MerkenDocTitle()

Dim txtTitle As String
Dim adoc As Document
Dim rngTM As Range

Set adoc = ActiveDocument

If adoc.Bookmarks.Exists("txtDocTitle") = True Then
txtTitle = adoc.FormFields("txtDocTitle").Result
Else
txtTitle = "txtDocTitle existiert nicht :-("
End If

If adoc.Bookmarks.Exists("txtDocTitleKopf") = True Then
'Dokumentenschutz aufheben
adoc.Unprotect
Set rngTM = adoc.Bookmarks("txtDocTitleKopf").Range
rngTM.Text = txtTitle
adoc.Bookmarks.Add Name:="txtDocTitleKopf", Range:=rngTM
'adoc.Bookmarks("txtDocTitleKopf").Range.Text = txtTitle
'Dokumentenschutz aktivieren
adoc.Protect Type:=wdAllowOnlyFormFields, NoReset:=True
Else
MsgBox "txtDocTitleKopf existiert nicht :-("
End If

set rngTM = nothing

End Sub


Gruß
Marc

Ähnliche fragen