Ersetzen Sie Feld in Kopf- und Fußzeile in Word mit Interop

8

Wie man ein "FELD" in der Kopf- / Fußzeile ersetzt?

Beispiel: Word-Dokument mit Dateiname & amp; Datum. anstelle des Dateipfads - [FilePath] stattdessen C: //Documents/Location/Dateiname.doc, [Datum] statt 18/07/2013.

Ich kann jeden Text durch einen Bereich ersetzen.

%Vor%

Dies funktioniert für den Dateinamen, aber für das Datum ist es nicht möglich, das zu ersetzende Format zu erraten. Das ist alles, weil ich nicht in der Lage bin, die genauen zu ersetzenden Feldinformationen abzufangen.

Den folgenden Code kann ich auch nicht verwenden

%Vor%

Nur so sehe ich ab sofort alle möglichen Datumsformate und ersetze, aber das scheint mir kein guter Ansatz zu sein.

Aktualisierung gemäß dem Kommentar, der mit Storyrange angegeben wurde.

Gibt mir nicht die genaue Feldinformation, die [DATUM] sagt. Wenn ich durch Geschichtebereich iteriere, bekomme ich die Typinformation, die ich wdstorytype erhalte, die über Abschnittsinformationen ist, nt über die Feldinformationen.

%Vor%

Aktualisierung:  Sieht etwas aus, das mir hier hilft, aber scheint nicht zu funktionieren. Irgendeine Idee, wie ich das Dokumentenobjekt erzwingen kann, benutze das folgende vor dem Export.

%Vor%     
Jay 18.07.2013, 04:38
quelle

3 Antworten

10

Schließlich, nachdem wir die schlechte Dokumentation über introp.word durchgegangen sind, haben wir die Lösung

%Vor%     
Jay 19.07.2013, 04:53
quelle
2

Jay,

Vielleicht ein bisschen spät, aber trotzdem ...

Kann nicht kommentieren, also antworte ich.

Wenige Dinge, die ich dir tue, können dir (oder anderen) eines Tages in Bezug auf die aktuell akzeptierte Antwort nützlich sein.

  1. Um Ihre Frage vom letzten Update zu beantworten, können Sie Feldcodes mithilfe dieser Option aktivieren und dann mithilfe von Suchen nach Feldern suchen:

    %Vor%

    Sie würden das also vor der Suche einschalten (sofern nicht bereits geschehen) und es wiederherstellen, wenn Sie fertig sind.

  2. Die Lösung, die Sie selbst erstellt haben, wird für die meisten Szenarien funktionieren, und ich habe so etwas für eine gewisse Zeit verwendet. Ich stieß jedoch auf ein Dokument mit 2000 Abschnitten. Das Durchlaufen dieser Abschnitte wird wiederum immer wieder dieselben Header durchlaufen. In meinem Fall Verarbeitung des Dokuments Zeitüberschreitung (angesichts der akzeptablen Bearbeitungszeit)

  3. Die Lösung mit StoryRanges könnte ein besserer Ansatz sein (kombiniert mit wechselnden Feldcodes)
    Einige Beispiele für die Verwendung (generische Suche & ersetzen):
    Ссылка
    Ссылка

  4. Eine Sache, an die Sie sich erinnern sollten: Vergessen Sie nicht, nach Dingen in Formen der Reichweite zu suchen

  5. Ich schätze, du hast herausgefunden, wie man das Feld ersetzt. In jedem Fall konvertiere ich einfachen Text in ein Feld.

    Sobald Find.Execute etwas getroffen hat, wird der Bereich ausgewählt und ich mache

    %Vor%

TL; DR: Wenn Ihre Dokumente im Format vorhersehbar sind und nur eine kleine Anzahl von Abschnitten haben und der Text nicht innerhalb von Formen ist, dann machen Sie sich darüber keine Gedanken.

    
Cristian 06.12.2016 00:40
quelle
-2
%Vor%     
Akhilesh Kamate 03.02.2016 07:43
quelle

Tags und Links