2010-01-26 7 views
8

Ich habe eine Reihe von Daten in einer Datenbank und ich möchte einige Tabellen in PowerPoint generieren. Ich hatte damit begonnen, das manuell zu tun, aber ich dachte, es könnte einen Weg geben, wie ich einfach Code schreiben kann, um meine Daten aus der Datenbank zu nehmen und auf eine PowerPoint-Folie auszugeben.Gibt es eine Möglichkeit, die Erstellung von PowerPoint-Folien zu automatisieren?

Irgendwelche Ratschläge hier?

+5

Haben Sie einen Praktikanten zur Hand? –

+0

versuchen Sie www.pptxbuilder.com –

Antwort

5

Sie sicherlich Powerpoint automatisieren Trog die Nutzung seiner XPCOM api - (obwohl, jedes Mal wenn ich Dokumentation über die COM API für MS Office sah habe ich nicht gefunden)

Aber ich würde Ich schlage vor, dass Sie anstelle von PowerPoint-Folien Open Document-Präsentationen (ISO 26300 - .ODT-Dateien) erstellen, die leicht zu verstehen, zu analysieren und zu bearbeiten sind.

.ODT-Dateien sind das Standard-Präsentationsformat für Open Office, Koffice , und andere Office-Software, und ich denke, dass Microsoft inzwischen dazu gekommen ist, es zu unterstützen (obwohl sie ISO drängen, ihre eigene proprietäre Spezifikation eines ähnlichen zu genehmigen Format)

Wie auch immer, die Bearbeitung des Inhalts einer ODP-Datei ist trivial; Die ODP-Datei selbst ist ein gezipptes Archiv, Sie entpacken es und bearbeiten die darin enthaltene Datei "contents.xml". Beim Erstellen neuer Folien müssen Sie den XML-Knoten, der einer Folie entspricht, kopieren und den gewünschten Text bearbeiten - und packen Sie alles wieder in ein Zip-Archiv.

+0

haben Sie irgendwelche Beispiele? – leora

+2

Powerpoint hat eine COM-Schnittstelle, nicht XPCOM. Ich denke, XPCOM ist Mozillas Implementierung von COM, und sie haben es in Firefox eingebaut, wenn ich mich nicht irre. Das ist für Powerpoint völlig irrelevant. Zurück zur Frage ... Ja, es ist durchaus möglich, Powerpoint-Präsentationen mit jscript oder vbscript programmatisch zu generieren. Microsoft nennt es "Automatisierung" und der COM-Moniker, nach dem gesucht wird, ist "Application.Powerpoint". – Cheeso

+0

Danke @Cheeso. (Fixed the write-up) – jsbueno

0

Wahrscheinlich die einfachste Route zu nehmen wäre, Excel zu verwenden, um die Daten zu extrahieren und dann die Tabelle in PowerPoint einzubetten.

2

PowerPoint hat Zugriff auf VBA oder? (It does, I checked) Also sollten Sie in der Lage sein, die Generierung auf diese Weise zu automatisieren. Ich habe das ziemlich ausführlich gemacht, aber in einem Excel-Dokument. Ich habe es noch nie mit Powerpoint probiert.

Das Problem wird jetzt eine der zeitlichen Investitionen? Lerne, wie man es mit VBA macht oder mach es manuell ... Wenn das eine allgemeine Sache sein könnte, würde ich vorschlagen, dass du lernst, wie man es über VBA macht. Im Allgemeinen fand ich, dass das Automatisieren von Excel mit VBA nicht zu hart war, sobald Sie die Grundlagen verstanden haben. Die eingesparte Zeit hat sich auf lange Sicht definitiv gelohnt.

Endlich, ich wünschte, ich könnte ein Buch empfehlen, um Sie zu beginnen, aber ach, ich habe nie darüber nachgedacht, dies zu versuchen, also habe ich nie zu jeder Zeit dies zu erforschen.

0

Ich denke, für was Sie ODT (oder ein Ersatz-Praktikanten) aufgeführt ist die beste Lösung. Vor allem, wenn Sie nur 1 oder 2 Mal brauchen und/oder wie es in der endgültigen PPT aussieht ist nicht wichtig.

Wenn dies jedoch zu einer Situation wird, in der Sie komplexe Logik für das Ziehen haben oder mehr Kontrolle darüber haben möchten, wie die Ausgabe aussieht und Nicht-Programmierern die Möglichkeit gibt, die verwendeten Vorlagen zu erstellen/bearbeiten, dann schauen Sie sich Windward Reports (Disclaimer - ich bin der CTO bei Windward). Mit Windward können Sie Berichte in PowerPoint erstellen, die Daten aus mehreren Datenquellen abrufen und anschließend das endgültige PowerPoint mit den darin enthaltenen Daten generieren.

2
  • können Sie Powerpoint-Dateien erzeugen mit Apache POI (eine Java-Bibliothek)
  • python-pptx ist eine Python-Bibliothek für die Erstellung und Aktualisierung von Powerpoint-Dateien
  • Openoffice verfügt über eine Schnittstelle UNO mit Bindungen in mehreren Sprachen genannt
-1

Ich konnte keine befriedigende Lösung für dieses Problem finden, also entwickelte ich meine eigene.

Bitte siehe Cloudmatica PowerPoint Generator. Es kombiniert eine Folienvorlage mit tabellarischen Daten, um PowerPoint- und PDF-Ausgaben zu erstellen.

Sie können Daten aus einem Tabellenkalkulationsprogramm wie Microsoft Excel oder Google Tabellen kopieren und einfügen. Die PowerPoint-Vorlage ist eine Folie mit Platzhaltern für den Inhalt. Das Konzept ähnelt dem Seriendruck. Die gesamte Verarbeitung wird in der Cloud ausgeführt, sodass auf Ihrem Computer nichts installiert werden muss und Sie keinen Code schreiben müssen.

Ich hoffe, Sie finden das nützlich.

+0

Links zu anderen Seiten werden abgeraten, da sie sich in der Zukunft ändern können. Das allgemeine Layout des Problems sollte in der Antwort selbst dargestellt werden. – Qirel

-1

Nur für ein oder zwei Mal können Sie Excel verwenden. Platzieren Sie Daten in Excel und generieren Sie Tabellen. Dann kopiere es und füge es in deinen Powerpoint ein. Einfacher Weg, aber kein genaues Werkzeug.

Verwandte Themen