Ich verwende die AddHeaderFromTo
-Funktion von https://msdn.microsoft.com/en-us/library/office/cc546917.aspx. Das Problem besteht darin, dass keine Bilder oder Tabellen im Kopfbereich des Dokuments gefunden werden. Gibt es eine Möglichkeit, alles vom Header in das andere Dokument zu bekommen?Hinzufügen komplexer Kopfzeile von einem Word-Dokument zu einem anderen
0
A
Antwort
0
Mit OpenXMLPowerTools konnte ich den folgenden Code verwenden, um die Header aus einer Datei zu nehmen und fügen Sie sie in eine andere:
var to = @"C:\Users\dheale\Desktop\Word Docs\_Blank_Skeleton.DOCX";
var from = @"C:\Users\dheale\Desktop\Word Docs\Letterheads\StandardLetterhead3.DOCX";
var outDoc = @"C:\Users\dheale\Desktop\Word Docs\test.DOCX";
var sources = new List<Source>
{
new Source(new WmlDocument(to), false),
new Source(new WmlDocument(from), true)
};
DocumentBuilder.BuildDocument(sources, outDoc);
0
Das folgende VBA-Skript sollte es für Sie tun. Führen Sie ein Word-Dokument aus. Ändern, um zu passen.
Sub editAll()
Dim Doc
Dim i As Integer
Dim docToOpen As FileDialog
Set docToOpen = Application.FileDialog(msoFileDialogFilePicker)
docToOpen.Show
For i = 1 To docToOpen.SelectedItems.Count
'Open each document
Set Doc = Documents.Open(FileName:=docToOpen.SelectedItems(i))
With ActiveDocument.Sections(1)
'insert new headers
Call editheader
End With
Next i
End Sub
Sub editheader()
If ActiveWindow.View.SplitSpecial <> wdPaneNone Then
ActiveWindow.Panes(2).Close
End If
If ActiveWindow.ActivePane.View.Type = wdNormalView Or ActiveWindow. _
ActivePane.View.Type = wdOutlineView Then
ActiveWindow.ActivePane.View.Type = wdPrintView
End If
ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
With Selection.PageSetup
.LineNumbering.Active = False
.Orientation = wdOrientPortrait
.TopMargin = InchesToPoints(1)
.BottomMargin = InchesToPoints(1)
.LeftMargin = InchesToPoints(1)
.RightMargin = InchesToPoints(1)
.Gutter = InchesToPoints(0)
.HeaderDistance = InchesToPoints(0.1)
.FooterDistance = InchesToPoints(0.5)
.PageWidth = InchesToPoints(8.5)
.PageHeight = InchesToPoints(11)
.FirstPageTray = wdPrinterDefaultBin
.OtherPagesTray = wdPrinterDefaultBin
.SectionStart = wdSectionNewPage
.OddAndEvenPagesHeaderFooter = False
.DifferentFirstPageHeaderFooter = False
.VerticalAlignment = wdAlignVerticalTop
.SuppressEndnotes = False
.MirrorMargins = False
.TwoPagesOnOne = False
.BookFoldPrinting = False
.BookFoldRevPrinting = False
.BookFoldPrintingSheets = 1
.GutterPos = wdGutterPosLeft
End With
Selection.HeaderFooter.LinkToPrevious = Not Selection.HeaderFooter. _
LinkToPrevious
Selection.HeaderFooter.LinkToPrevious = Not Selection.HeaderFooter. _
LinkToPrevious
Selection.InlineShapes.AddPicture FileName:= _
"C:\Users\rshuell001\Desktop\test\asher.jpg", LinkToFile:=False, _
SaveWithDocument:=True
ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
End Sub
+0
Danke, aber ich kann es nicht über VBA-Skript ausführen, es muss Server-Seite in C# sein. –
Verwandte Themen
- 1. Hinzufügen von Änderungen von einem Mercurial-Repository zu einem anderen
- 2. Werte von einem Array zu einem anderen hinzufügen
- 3. Wie Kopfzeile zu einem Pandas DataFrame
- 4. Übergang von einem ListFragment zu einem anderen
- 5. Kopfzeile zu window.location.pathname hinzufügen
- 6. Array zu einem anderen Array hinzufügen
- 7. Text zu einem anderen Rahmen hinzufügen
- 8. Hinzufügen Fragment zu einem anderen Fragment
- 9. Hinzufügen von Daten von JTable zu einem anderen
- 10. Hinzufügen von Objekten zu NSMutableArray von einem anderen NSMutableArray (iOS)
- 11. Verschieben von Text von einem Formular RichtextBox zu einem anderen auf einem anderen Formular in C#
- 12. Hinzufügen von Navigationsschaltflächen zu einem AbstractCell
- 13. Hinzufügen von Einstellungen aus einem anderen Projekt zu app.config
- 14. Hinzufügen von Benutzern zum Eigentümer zusätzlich zu einem anderen Benutzer
- 15. Hinzufügen von Layout zu einem anderen Layout in Qt [C++]
- 16. Kopiere Spalte von einem Jtable zu einem anderen
- 17. Werte hinzufügen von einem anderen Array von Objekten zu einem Objekt
- 18. Git: Code von einem Zweig zu einem anderen zu überschreiben
- 19. Objekt von einem Prozess zu einem anderen übergeben
- 20. Weitergabe von Daten von einem Service zu einem anderen
- 21. Kopieren von einem Array zu einem anderen mithilfe von Zeigern
- 22. Mapping von Werten von einem DataFrame zu einem anderen
- 23. Kopieren von Tabellen von einem MySQL zu einem anderen
- 24. Verschieben von Zeilen von einem Fenster zu einem anderen
- 25. Senden von Daten von einem Modal zu einem anderen
- 26. Übertragung von Bytes von einem ByteBuffer zu einem anderen
- 27. Kopieren von Elementen von einem Zeichen-Array zu einem anderen
- 28. Senden von Daten von einem Controller zu einem anderen
- 29. Übertragen von Änderungen von einem Git Repo zu einem anderen
- 30. Hinzufügen von Metadaten-Parser zu einem Tabellenheader
Leider haben Sie manuell einzeln kopieren, um auf der Grundlage der Art von Inhalt, den Ihr Header enthält. – Flowerking