database automation powerpoint

database - ¿Hay alguna manera de automatizar la generación de diapositivas de PowerPoint?



automation (7)

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.

¿Algún consejo aquí?


PowerPoint tiene acceso a VBA ¿verdad? ( Sí lo comprobé ) 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.

Finalmente, desearía poder recomendar un libro para que comiences, pero, por desgracia, nunca he considerado probarlo, así que nunca he investigado esto.


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


Creo que por lo que usted mencionó, ODT (o un pasante 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 un mayor control sobre cómo se ve la salida y otorgar a los no programadores la capacidad de crear / editar las plantillas utilizadas, entonces eche un vistazo en 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.


Sin duda, puede automatizar Powerpoint mediante el uso de su API XPCOM (aunque cada vez que busqué documentación en la API COM para MS Office, no la he encontrado)

Pero sugiero que, en lugar de crear diapositivas de PowerPoint, haya creado presentaciones de documentos abiertos (archivos ISO 26300 - .ODT), que son fáciles de entender, analizar y editar de forma programática,

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

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 el paquete todo dentro de un archivo zip de nuevo.


  • 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 enlaces en varios idiomas

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

Por favor, 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 encuentres esto útil.


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.