Erstellen Von Word-2010-Dokument Programmgesteuert
Jede Woche produziere ich ein word-Dokument mit einigen Kopie, Tabellen und Diagramme aus verschiedenen Quellen auf unser Netzwerk.
Kann es dauern, ein bisschen Zeit und manchmal mache ich Fehler oder vergessen Sachen, die sollte gehen. Ich möchte diesen Vorgang automatisieren, so viel wie möglich.
Also im Grunde möchte ich ein Word-Vorlage oder Console-App, die wenn ich Sie öffnen/ausführen es geht Los und sammelt alle diese Sachen und links in die verschiedenen Teile des Dokuments.
Nehme ich das einfügen muss:
- Einige Kopie aus einem anderen Word-Dokument
- PNG (pie chart)
- Erstellen einer Tabelle aus einer CSV-Datei
- Haben eine standard Kopf-und Fußzeile mit Seitennummerierung
Normalerweise mache ich ein paar änderungen an der Kopie in das Dokument zu markieren, das highlight der Woche.
Dann überprüfe ich es in eine SharePoint-Netzwerk, wo Benutzer können öffnen und anzeigen.
Ich herausfinden, dass das, was zu tun ist knacken VS2010 und machen Sie eine Word-Vorlage Projekt. Ich habe das noch nie gemacht und ich fragte mich, welche fallen es gibt oder ob es überhaupt eine geeignete Möglichkeit um mein problem zu lösen.
Meine andere option wäre es, einige power-shell, aber ich bin kein Experte da.
Ich würde sehr komfortable schreiben von Konsolenanwendungen, damit ich am Ende vielleicht dabei.
Hilfe/Ratschläge dankbar.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich würde die Lösung dieses Problems durch den Abbau der einzelnen Schritte, wie Sie durchführen würden, wenn Sie Sie sitzen vor einem leeren Word-Dokument. Dann automatisieren Sie mithilfe des Objektmodells. Es ist ein bisschen eine Lernkurve, aber sobald Sie Vergangenheit, die Sie werden süchtig werden, um die Automatisierung von Office. Office ist schon eine starke Plattform. Das meiste, was Sie erreichen können über die Benutzeroberfläche gemacht werden kann programmgesteuert. Ich mache ziemlich viel automation mit Excel. Der code ist Recht intuitiv...die Dinge wie Arbeitsblatt.Range["A1"] = "abcd" (Einstellung Zelle A1 = "abcd").
hier sind einige Hinweise:
http://support.microsoft.com/kb/316383
http://msdn.microsoft.com/en-us/library/ee861527.aspx
Wenn du gehen Sie durch die Anleitung im ersten link, erhalten Sie den Kern von ihm. Das tolle ist, dass man mit dem debugger Schritt für Schritt durch die Codezeilen. Da jede Zeile ausgeführt wird, können Sie die Ergebnisse in das Word-Dokument. Ich habe noch nie verwendet eine Word-Vorlage Projekt, so dass ich kann nicht sprechen für die vor - /Nachteile gibt. Geht das Objekt-Modell der route, die Sie gerade haben, um zu artikulieren, was Sie wollen passieren, brechen Sie in die einzelnen Schritte, wie Sie durchführen würde, und dann code es auf. Wenn Sie nicht weiterkommen, wahrscheinlich hat jemand gebloggt/gepostet darüber, wie etwas zu tun. Google finden eine Lösung sehr schnell. Viel Glück!
Haben Sie viele Optionen:
Sind Sie wahrscheinlich am besten aus, es zu tun mit einem makro zuerst, aber das alte VB6. Die Techniken, die Sie schnell lernen, es zu übersetzen, ganz gut in den anderen Ansätzen. Open XML SDK ist die Tugend ohne Word das Dokument zu erstellen.