Programmatisch legen Sie ein Word-Dokument in ein bestehendes Dokument (Word 2007)

Ich habe ein Word 2007-Dokument, das ich einfügen möchten einen bestehenden Word-Dokument in die - unter Beibehaltung der Kopf - /Fußzeile, Grafiken, Rahmen usw. der beiden Dokumente.

Mache ich das mit der Word-API in C#.

Es klingt ziemlich einfach, ich meine, sicher haben Sie einfach nur die "InsertFile-Methode"...
außer, dass in Word 2007 die "Datei einfügen" - Funktion ist jetzt eigentlich "einfügen von text aus Datei" und genau das tut es - ohne Seitenrand -, Grafik-und Fußzeile usw.

OK, dann werde ich mit kopieren und einfügen, anstatt, wie so...

_Document sourceDocument = wordApplication.Documents.Open(insert the 8 million by ref parameters Word requries)
sourceDocument.Activate(); //This is the document I am copying from 
wordApplication.Selection.WholeStory();
wordApplication.Selection.Copy();
targetDocument.Activate(); //This is the document I am pasting into
wordApplication.Selection.InsertBreak(wdSectionBreakNextPage);
Selection.PasteAndFormat(wdFormatOriginalFormatting);
wordApplication.Selection.InsertBreak(wdSectionBreakNextPage);

die tut, was Sie erwarten würde, nimmt der source-Dokument, wählt alles aus, kopiert es, fügt dann in das Zieldokument. Da habe ich einen Abschnittsumbruch vor dem ausführen der einfügen-es bewahrt auch die Grenzen, Kopf - /Fußzeile der beiden Dokumente.

Jedoch - das ist jetzt, wo ich das problem haben. Die paste nur schließt die Grenzen, header usw, wenn ich die paste am Ende des Zieldokuments. Wenn ich es einfügen in der Mitte - trotz einer vorangegangenen Abschnitt Pause, dann wird nur der text wird eingefügt und die header und Grenzen etc sind verloren.

InformationsquelleAutor Chris B | 2009-03-27
Schreibe einen Kommentar