Verwenden einer Tabelle zum Aktualisieren von Feldern in Word

Verwenden einer Tabelle zum Aktualisieren von Feldern in Word

Ich möchte die folgende Funktionalität in meine MS Word-Berichte implementieren. Ich bin mir nicht sicher, wie/ob das möglich ist.

Als Referenz habe ich folgendes Bild im Sinn:

Beispiel für das, was ich will

  1. Fügen Sie am Anfang eines Berichts eine Eingabetabelle mit allen Parametern ein.
  2. Richten Sie im gesamten Inhalt des Berichts Felder ein, die sich ändern, wenn sich die Eingaben in der Tabelle ändern.
  3. Beispiel: PARAMETER 1 wird auf 100 gesetzt, alle PARAMETER 1 im Bereich Inhalt werden dann automatisch auf 100 geändert.

Danke

Antwort1

Ich denke, Sie müssen diese Anforderung mit VBA implementieren.

VBA-Konsole öffnen: Klicken Sie auf „Alt + F11“

Hier ist das von der Bildschirmaufzeichnung generierte Makro, auf das Sie verweisen können:

Sub Macro5()
Selection.TypeText Text:="100"
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
        .Text = "parameter1"
        .Replacement.Text = "100"
        .Forward = True
        .Wrap = wdFindAsk
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    Selection.TypeText Text:="200"
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "parameter2"
        .Replacement.Text = "200"
        .Forward = True
        .Wrap = wdFindAsk
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    Selection.TypeText Text:="300"
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "parameter3"
        .Replacement.Text = "300"
        .Forward = True
        .Wrap = wdFindAsk
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
End Sub

Sie müssen nur die folgenden beiden Parameter ändern, um den Wert der Variablen zu steuern:

TypText Text:="XX" Ersatz.Text = "XX"

Antwort2

Ich glaube, ich habe einen Weg gefunden, der Ihrem Wunsch ziemlich nahe kommt. Allerdings müssen Sie statt einer Tabelle im Dokument die erweiterten Eigenschaften eines Dokuments verwenden.

Dies sind die Schritte von Grund auf (für eine aktuelle Version von Word unter Windows):

  1. Neues Dokument erstellen
  2. Gehen Sie zu Datei ➡ Eigenschaften (oben rechts) ➡ Erweiterte Eigenschaften:

Bildbeschreibung hier eingeben

  1. Gehen Sie dann im angezeigten Fenster zur Registerkarte „Benutzerdefiniert“
  2. Hier können Sie benutzerdefinierte Dokumenteigenschaften erstellen, die Sie zum Speichern der Parameterwerte verwenden können, wie das folgende GIF zeigt (entschuldigen Sie den Tippfehler):

Bildbeschreibung hier eingeben

  1. Gehen Sie nun zurück zum Dokument. Dort können SieFeldcodesum Dokumenteigenschaften anzuzeigen.

  2. Am einfachsten ist es, an die Stelle zu gehen, an der der Parametertext erscheinen soll, CTRL+ zu drücken F9, einzugeben DOCPROPERTY parameter_name \* MERGEFORMATund dann zu drücken, F9um alle Feldcodes im Dokument zu aktualisieren (einschließlich des soeben erstellten):

Bildbeschreibung hier eingeben

  1. Wiederholen Sie dies an jeder Stelle, an der die Parameter erscheinen sollen.

Um den Parameterwert im gesamten Dokument zu ändern, aktualisieren Sie ihn in den erweiterten Eigenschaften (Schritt 2-3), gehen Sie zurück zum Dokument und aktualisieren Sie alle Feldcodes, indem Sie drücken F9.

Hier ist eine kurze Demo:

Bildbeschreibung hier eingeben

verwandte Informationen