2010-01-26 12 views
8

Tengo un montón de datos en una base de datos y quiero generar algunas tablas en PowerPoint. Empecé a hacer esto manualmente, pero pensé que podría haber una manera de escribir un código para tomar mis datos de la base de datos y sacarlos en una diapositiva de PowerPoint.¿Existe alguna manera de automatizar la generación de diapositivas de PowerPoint?

¿Algún consejo aquí?

+5

¿Tiene un interno práctico? –

+0

intente www.pptxbuilder.com –

Respuesta

5

Por supuesto que puede automatizar PowerPoint A través del uso de su API XPCOM - (aunque, cada vez que me puse a buscar en la documentación API COM para MS Office no he encontrado)

Pero, me sugiera que en lugar de crear diapositivas de PowerPoint, cree presentaciones de documentos abiertos (ISO 26300 - archivos .ODT) - que sean fáciles de entender, analizar y editar de manera programática -

. Los archivos .ODT son el formato de presentación predeterminado para Open Office, Koffice , y otro software de oficina, y creo que Microsoft ya lo ha respaldado (aunque han obligado a ISO a aprobar su propia especificación propietaria de un producto similar). formato)

De todos modos, editar el contenido de un archivo .odp es trivial; el archivo ODP en sí es un archivo comprimido, lo descomprime y edita el archivo "contents.xml" dentro de él; crear diapositivas nuevas es una cuestión de copiar el nodo XML correspondiente a una diapositiva y editar el texto deseado - y empaca todo dentro de un archivo zip de nuevo.

+0

¿tiene algún ejemplo? – leora

+2

Powerpoint tiene una interfaz COM, no XPCOM. Creo que XPCOM es la implementación de COM de Mozilla, y lo incorporaron a Firefox si no me equivoco. Eso es completamente irrelevante para Powerpoint. Volviendo a la pregunta ... Sí, es bastante posible generar presentaciones de powerpoint mediante programación, usando jscript o vbscript. Microsoft lo llama "automatización" y el apodo COM para buscar es 'Application.Powerpoint'. – Cheeso

+0

Gracias @ Cheeso. (se corrigió la reseña) – jsbueno

0

Probablemente la ruta más fácil de tomar sería utilizar Excel para extraer los datos y luego incrustar la hoja de cálculo en PowerPoint.

2

PowerPoint tiene acceso a VBA ¿verdad? (It does, I checked) Por lo tanto, debería poder automatizar la generación de esa manera. He hecho esto bastante extensamente pero en un documento de Excel. Nunca lo intenté con el power point.

El problema ahora se convierte en una inversión de tiempo? Aprenda a hacerlo con VBA o hágalo manualmente ... Si esto pudiera ser algo común, le sugiero que aprenda cómo hacerlo a través de VBA. En términos generales, descubrí que automatizar Excel con VBA no era demasiado difícil una vez que entendía los conceptos básicos. El tiempo ahorrado definitivamente valió la pena a largo plazo.

Por último, me gustaría poder recomendar un libro para comenzar, pero, por desgracia, nunca he considerado probarlo, así que nunca lo he investigado.

0

Creo que para lo que ha enumerado ODT (o un interno de repuesto) es la mejor solución. Especialmente si solo necesita esto 1 o 2 veces y/o cómo se ve en el PPT final no es importante.

Sin embargo, si esto llega a ser una situación en la que tiene lógica compleja para lo que se extrae, o si desea tener mayor control sobre cómo se ve la salida y dar a los no programadores la capacidad de crear/editar las plantillas utilizadas, luego eche un vistazo a Windward Reports (descargo de responsabilidad: soy el CTO de Windward). Con Windward puede diseñar informes en PowerPoint que extraigan datos de los orígenes de datos multipel para luego generar el PowerPoint final con los datos incorporados.

2
  • puede generar archivos de PowerPoint con Apache POI (una biblioteca de Java)
  • python-pptx es una biblioteca de Python para crear y actualizar archivos de PowerPoint
  • OpenOffice tiene una interfaz llamada UNO con fijaciones en varios idiomas
-1

No pude encontrar una solución satisfactoria a este problema, así que desarrollé la mía.

Consulte Cloudmatica PowerPoint Generator. Combina una plantilla de diapositiva con datos tabulares para producir resultados de PowerPoint y PDF.

Puede copiar y pegar datos de un programa de hoja de cálculo como Microsoft Excel o Google Sheets. La plantilla de PowerPoint es una diapositiva con marcadores de posición para el contenido. El concepto es similar a la combinación de correspondencia. Todo el procesamiento se realiza en la nube, por lo que no hay nada que instalar en su computadora, y no es necesario escribir el código.

Espero que le sea útil.

+0

Se desaconsejan los enlaces a otros sitios, ya que pueden cambiar en el futuro. El diseño general del problema debe presentarse en la respuesta misma. – Qirel

-1

Solo por una o dos veces puede usar excel. Coloque los datos en Excel y genere tablas. Luego copia y pega en tu power point. Manera fácil pero no una herramienta exacta.

Cuestiones relacionadas