Office - Word, Excel und Co. 9.710 Themen, 40.895 Beiträge

Word: Wie kann man Leerzeilen bei leeren Textformularfeldern

Ixcel / 3 Antworten / Flachansicht Nickles

Kenne mich mit Word-Textformularen nicht aus. Von unserem Adressprogramm werden Daten an Word 2000 übergeben, die dann in Textformularfelder eingelesen werden. Bei leeren Adressdatenfeldern führt das zu unschönen Leerzeilen in der Adresse. Kann man die Leerzeilen unterdrücken so wie man ja auch das Drucken von LeerZEICHEN unterdrücken kann? Muss ich dafür womöglich ein Makro schreiben, das beim Eintreten oder Verlassen des Textformularfelds ausgeführt wird?
Ixcel

bei Antwort benachrichtigen
Uli M Ixcel „Word: Wie kann man Leerzeilen bei leeren Textformularfeldern“
Optionen

Dazu müsstest du am sinnvollsten wohl an den Quellcode ran.
Prinzipiell wäre es auch denkbar, mit einem Makro (in dem Fall wohl von "außen") "leere" Textformularfelder im nachhinein zu löschen, wenn ein ggf. gesetztes Kennwort bekannt ist. Dies kann natürlich das Layout durcheinander bringen, von dem ein solches Vorhaben ohnehin abhängig ist: Sollten etwa nur die Felder gelöscht werden, die Absätze, ggf. Tabellenzellen oder -zeilen, in denen sie sich befinden?
Nur mal ein Bsp.:
Sub LeereFfLöschen()
Dim oDok As Document, oFf As FormField
Set oDok = ActiveDocument
On Error Resume Next
With oDok
.Unprotect "KENNWORT"
For Each oFf In .FormFields
If oFf.Type = 70 Then ' wdFieldFormTextInput
If Trim(oFf.Result) = "" Then oFf.Delete
End If
Next oFf
.Protect 2, True, "KENNWORT" ' 2 = wdAllowOnlyFormFields
End With
End Sub

bei Antwort benachrichtigen