Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Feldfunktion statisch machen

143 views
Skip to first unread message

Detlef Paschke

unread,
Jul 22, 2019, 9:40:50 AM7/22/19
to
Hallo,

ich habe mich seit langem mal wieder hingesetzt und eine neue
Brief-Vorlage für mich gebaut.

Dafür habe ich fill-in Felder "für mich entdeckt", die zunächst genau
dass machen, was ich mir wünsche. Beim Öffnen des Dokuments bzw. der
Vorlage wird nach den Daten für diese Felder gefragt.
Ich finde keine andere sinnvolle Möglichkeit dies so zu gewährleisten.
Ach Ref- und Ask-Felder habe ich probiert, aber dort geht es bei mir nur
mit markieren und F9 aber nicht automatisch beim öffnen.

Nur werden die fill-in Felder nicht nur beim öffnen, sondern auch bei
jeder Seitenansicht, bei der Druckvorschau und beim Drucken selbst auch
noch einmal abgefragt, was das Dokument nicht besonders
Benutzerfreundlich macht.

Sinnvoll wäre dann natürlich, die Felder nach dem Ausfüllen statisch zu
machen. Mit Ctrl & Shift & F9 ist dies ja durchaus möglich, nur faul wie
man nun mal ist würde ich dies gern automatisieren.

Hat da jemand einen Tipp für mich, wie man das machen könnte, ein
fill-in Feld abfragen und im Anschluss statisch machen?

Viele Grüße
Detlef Paschke

--
registered Fli4l-User #00000209
Das "Zitat des Augenblicks" gibt es nur auf
http://www.schabau.goip.de

Bernhard Sander

unread,
Jul 22, 2019, 12:13:03 PM7/22/19
to
Hallo Detlef,

ich habe grad mal rumprobiert (Word 2010).
Wenn ich fill-in-Felder in den Kopfbereich lege, fragt Word bei den von Dir erwähnten Ereignissen immer wieder frisch ab.
Wenn diese Felder im Textbereich liegen, dann fragt Word nur beim Öffnen des Dokuments ab.

Mit welcher Word-Version arbeitest Du?

> Hallo,
>
> ich habe mich seit langem mal wieder hingesetzt und eine neue
> Brief-Vorlage für mich gebaut.
>
> Dafür habe ich fill-in Felder "für mich entdeckt", die zunächst genau
> dass machen, was ich mir wünsche. Beim Öffnen des Dokuments bzw. der
> Vorlage wird nach den Daten für diese Felder gefragt.
> Ich finde keine andere sinnvolle Möglichkeit dies so zu gewährleisten.
> Ach Ref- und Ask-Felder habe ich probiert, aber dort geht es bei mir nur
> mit markieren und F9 aber nicht automatisch beim öffnen.
>
> Nur werden die fill-in Felder nicht nur beim öffnen, sondern auch bei
> jeder Seitenansicht, bei der Druckvorschau und beim Drucken selbst auch
> noch einmal abgefragt, was das Dokument nicht besonders
> Benutzerfreundlich macht.
>
> Sinnvoll wäre dann natürlich, die Felder nach dem Ausfüllen statisch zu
> machen. Mit Ctrl & Shift & F9 ist dies ja durchaus möglich, nur faul wie
> man nun mal ist würde ich dies gern automatisieren.
>
> Hat da jemand einen Tipp für mich, wie man das machen könnte, ein
> fill-in Feld abfragen und im Anschluss statisch machen?

Gruß
Bernhard Sander

Detlef Paschke

unread,
Jul 22, 2019, 1:22:51 PM7/22/19
to
Am 22.07.2019 um 18:13 schrieb Bernhard Sander:
> Hallo Detlef,

Hallo Bernhard,

> ich habe grad mal rumprobiert (Word 2010).
> Wenn ich fill-in-Felder in den Kopfbereich lege, fragt Word bei den von Dir erwähnten Ereignissen immer wieder frisch ab.
> Wenn diese Felder im Textbereich liegen, dann fragt Word nur beim Öffnen des Dokuments ab.
>
> Mit welcher Word-Version arbeitest Du?

ich habe es auch gerade mal so getestet und auch bei mir ist es zunächst so.

Zunächst einmal, ich nutze Office 2010 Home und Student. Das war dazumal
das beste Angebot für Privatleute wie ich fand, denn so durfte ich
offiziell meine ganze Familie mit Office versorgen weil mit einem mal
Lizenz für drei PCs.

Nun zum Thema: In der Vorlage die ich erstellt habe, sind die fill-in
Felder innerhalb der Kopfzeile der ersten Seite. Somit offensichtlich
die erste Hürde.

Wenn ich die Felder nun außerhalb der Kopfzeile setze wird in der Tat
zunächst nur einmal nach den Feldern gefragt, es bleiben aber auch mit
den eingegebenen Daten Feldfunktionen die beim nächsten Drucken
aktualisiert werden wollen.

Habe ich mich halbwegs verständlich gemacht?

Teste mal, speichere das Dokument mit den per fill-in eingegebenen
Daten, öffne es wieder (dann stehen immer noch die eingegebenen Daten in
den Feldern) und dann Drucke. Word fragt wieder nach den Feldern.

>
> Gruß
> Bernhard Sander

Detlef Paschke

unread,
Jul 23, 2019, 8:14:57 AM7/23/19
to
Am 22.07.2019 um 19:22 schrieb Detlef Paschke:

>
> Wenn ich die Felder nun außerhalb der Kopfzeile setze wird in der Tat
> zunächst nur einmal nach den Feldern gefragt, es bleiben aber auch mit
> den eingegebenen Daten Feldfunktionen die beim nächsten Drucken
> aktualisiert werden wollen.
>

Ich habe jetzt mal ein wenig "gespielt" und habe folgendes Makro
zusammengetackert, welches alle Felder in der Kopfzeile statisch macht.

Sub Kopfzeile_statisch()
'
' Kopfzeile statisch machen
'
ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
Selection.WholeStory
Selection.Fields.Unlink
ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
End Sub

Die Frage ist nun, wie ich dieses automatisieren kann, am besten wohl,
nachdem die fill-in Felder bzw. das letzte ausgefüllt oder geändert wurden.

Bernhard Sander

unread,
Jul 26, 2019, 5:07:47 AM7/26/19
to
Hallo Detlef,

offenbar ist VBA Dir nicht fremd.
Dann gibt es ein paar Möglichkeiten.

Die aktuell einfachste wäre wohl, Dein Makro umzubenennen in AutoClose, dann wird es automatisch beim Schließen des Dokuments ausgeführt.

Andere Möglichkeit: mit einem eigenen Formular arbeiten das über ein Makro namens AutoNew aufgerufen wird.
Dann wird es nur ausgeführt, wenn ein neues Dokument angelegt wird.

In welchem Modul die Auto-Makros liegen ist dabei völlig egal.

>> Wenn ich die Felder nun außerhalb der Kopfzeile setze wird in der Tat
>> zunächst nur einmal nach den Feldern gefragt, es bleiben aber auch mit
>> den eingegebenen Daten Feldfunktionen die beim nächsten Drucken
>> aktualisiert werden wollen.
>>
>
> Ich habe jetzt mal ein wenig "gespielt" und habe folgendes Makro
> zusammengetackert, welches alle Felder in der Kopfzeile statisch macht.
>
> Sub Kopfzeile_statisch()
> '
> ' Kopfzeile statisch machen
> '
> ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
> Selection.WholeStory
> Selection.Fields.Unlink
> ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
> End Sub
>
> Die Frage ist nun, wie ich dieses automatisieren kann, am besten wohl,
> nachdem die fill-in Felder bzw. das letzte ausgefüllt oder geändert wurden.

Viele Grüße
Bernhard Sander

Detlef Paschke

unread,
Jul 26, 2019, 6:58:48 AM7/26/19
to
Am 26.07.2019 um 11:07 schrieb Bernhard Sander:
> Hallo Detlef,

Hallo Bernhard,

> offenbar ist VBA Dir nicht fremd.
> Dann gibt es ein paar Möglichkeiten.

nunja, ich verstehe wenig vom Syntax und sammle mir meist alles was ich
brauche zusammen aber irgendwie funktioniert es zum Schluss meist.

> Die aktuell einfachste wäre wohl, Dein Makro umzubenennen in AutoClose, dann wird es automatisch beim Schließen des Dokuments ausgeführt.
>
> Andere Möglichkeit: mit einem eigenen Formular arbeiten das über ein Makro namens AutoNew aufgerufen wird.
> Dann wird es nur ausgeführt, wenn ein neues Dokument angelegt wird.
>
> In welchem Modul die Auto-Makros liegen ist dabei völlig egal.

Genau so habe ich es zwischenzeitlich gemacht.
Ich habe mir etwas Hilfe in einem Office Forum gesucht, da ja leider
alle Office Newsgroups leider nur noch sehr dünn besiedelt zu sein
scheinen. Sehr schade drum eigentlich.

Also nach einigen Versuchen in mehrere Richtungen, darunter auch mit
Inhaltssteuerungselementen, bin ich nun bei einer absoluten
Minimallösung angekommen, die genau das macht, was ich brauche.
Das ist das einzige, was noch unter ThisDocument steht.

Option Explicit

Private Sub Document_New()
With
ActiveDocument.Sections(1).Headers(wdHeaderFooterFirstPage).Range.Fields
.Unlink
End With
End Sub

Beim erstellen eines neuen Dokuments aus der Vorlage fragt Word die
Fillin Felder ab, danach steigt das Script ein, wählt alle Felder in der
ersten Kopfzeile und führt auf diese einen Unlink aus.
Ich bin ein großer Freund davon, Code so minimalistisch wie möglich zu
halten.

Bernhard Sander

unread,
Jul 26, 2019, 7:30:20 AM7/26/19
to
Hallo Detlef,

> Also nach einigen Versuchen in mehrere Richtungen, darunter auch mit
> Inhaltssteuerungselementen, bin ich nun bei einer absoluten
> Minimallösung angekommen, die genau das macht, was ich brauche.
> Das ist das einzige, was noch unter ThisDocument steht.
>
> Option Explicit
>
> Private Sub Document_New()
> With
> ActiveDocument.Sections(1).Headers(wdHeaderFooterFirstPage).Range.Fields
> .Unlink
> End With
> End Sub
>
> Beim erstellen eines neuen Dokuments aus der Vorlage fragt Word die
> Fillin Felder ab, danach steigt das Script ein, wählt alle Felder in der
> ersten Kopfzeile und führt auf diese einen Unlink aus.
> Ich bin ein großer Freund davon, Code so minimalistisch wie möglich zu
> halten.

Der Code geht noch minimalistischer, ein Einzeiler:

Private Sub Document_New()
ActiveDocument.Sections(1).Headers(wdHeaderFooterFirstPage).Range.Fields.Unlink
End Sub

;-)

Gruß
Bernhard Sander

Detlef Paschke

unread,
Jul 26, 2019, 8:20:25 AM7/26/19
to
Am 26.07.2019 um 13:30 schrieb Bernhard Sander:
> Hallo Detlef,

Hallo Bernhard,

>
> Der Code geht noch minimalistischer, ein Einzeiler:
>
> Private Sub Document_New()
> ActiveDocument.Sections(1).Headers(wdHeaderFooterFirstPage).Range.Fields.Unlink
> End Sub
>
> ;-)

danke, noch schöner. Was braucht man mehr, macht doch genau was es soll.
Habe ich gleich so eingebaut.

Das waren noch schöne Zeiten, als Maustreiber noch unter 10kb groß
waren. Heute bekommt man eine DVD.
Wie man sieht, man kann Code minimieren und er bleibt gut lesbar.

> Gruß
> Bernhard Sander

China Republic ccp

unread,
Sep 6, 2022, 11:08:29 AM9/6/22
to
Hallo Bernhard,

Wo müsste dieser Code Eingepflegt werden damit das Dokument mich bei jedem Öffnen Abfragt?
Gruß Xi
0 new messages