Creación de presentaciones de PowerPoint / Keynote con lenguaje o script?
-
18-09-2019 - |
Pregunta
Últimamente he estado creando presentaciones de PowerPoint a empresas. Yo sobre todo he estado haciendo esto en PowerPoint. Básicamente son creados por el mismo diseño, pero sólo un número diferente en lugares fijos, y los diferentes números que se utilizan para generar el material gráfico de gráfico de barras de PowerPoint / pastel. (Básicamente existen estos objetos gráficos de tarta cuando se inserta, le dará la opción de cambiar el diseño, y la entrada de los números en alguna hoja de cálculo Excel que aparece).
Digamos que estoy haciendo esto para 100 empresas: no hay un solo camino para especificar todos los diferentes valores que necesito, y tienen el powerpoint creado alguna manera? Puedo proporcionar una base de diseño, todo lo que tiene que hacer es simplemente entrar y cambiar los valores dinámicos (nada de mapa de bits).
Esto no es aún una pregunta necesariamente para PowerPoint: si pudiera hacer esto con Keynote (como en, automatizar los gráficos circulares, gráficos de barras, y establecer lugares con números y texto estático), a continuación, que funciona también
Editar : He mencionado que sé que gráficos de tarta PowerPoint / gráficos de barras que se generan a partir de hojas de cálculo Xxcel. Hay alrededor de 3 de estos en mi presentación, junto con otros valores cambiantes en posiciones estáticas, a través de más o menos 100 presentaciones. Busco a la escritura de la totalidad o la mayor parte del proceso.
Editar : El uso de PowerPoint 2007 o la versión más reciente de Keynote. El método preferido de secuencias de comandos con Keynote probablemente sería AppleScript, con PowerPoint 2007, ya sea Python / Django o macros.
Solución
Lo sentimos, este se ha tomado unos días para volver a usted, tuvo que resolver un problema. Aquí está una manera rápida y eficiente para hacer lo que está pidiendo.
- Crear un PowerPoint habilitado para macros.
- Crear un único gráfico circular en el primera diapositiva a través de la Insertar | Gráfico comando en la cinta. Excel abierto. En las columnas, en la Horizontal (Categoría) Eje dejar tal cual (es decir, primero trim, segunda QRT, etc.). En la página Entradas de leyenda (Series) Eje , ampliar algunas columnas y añadir más datos. Asegúrese de nombres de columna son únicos.
- Cierre Excel
- Pulse Alt + F11 para ir a la VBE.
- copiar / pegar el código siguiente en un nuevo
módulo, cambiando la siguiente
variables:
chartTemplatePath
y, si es necesario,sc.Name
, a algo otra de su elección. - Haga clic en la subrutina F5 para funcionar. Ahora debería tener tantas tablas diapositivas como columnas.
.
Sub CreateChartDecksandSave()
Dim chartTemplatePath As String
chartTemplatePath = "C:\Temp\"
Dim myPPT As Presentation
Set myPPT = ActivePresentation
Dim mainChart As Chart
Set mainChart = myPPT.Slides(1).Shapes(1).Chart
Dim scCount As Integer
scCount = mainChart.SeriesCollection.Count
Dim sc As Series
For i = 1 To scCount
Set sc = mainChart.SeriesCollection(1)
myPPT.SaveCopyAs (chartTemplatePath & sc.Name & ".pptx")
sc.Delete
Next
End Sub
Si está trabajando con esto y los datos del gráfico desaparece de la principal PPT, está bien, sólo tiene que seleccionar la tabla, vaya a Herramientas de gráficos | Diseño | Seleccionar datos y vuelva a seleccionar el conjunto de datos como a toda la mesa.