Criação de apresentações Powerpoint / Keynote com scriptability?
-
18-09-2019 - |
Pergunta
Ultimamente tenho vindo a criar apresentações em PowerPoint para as empresas. I têm sido quase sempre fazendo isso em PowerPoint. Basicamente, eles são criados pelo mesmo design, mas apenas números diferentes em lugares fixos e números diferentes usado para gerar o material gráfico gráfico de barras PowerPoint / torta. (Basicamente, existem estes gráfico de pizza objetos quando inserido, dar-lhe uma opção para alterar o design, e inserir os números em alguns planilha excel que aparece).
Vamos dizer que eu estou fazendo isso por 100 empresas: não é lá uma maneira de apenas especificar todos os diferentes valores que eu preciso, e ter o powerpoint criado de alguma forma? Eu posso fornecer uma base de design, tudo o que precisa fazer é apenas ir e alterar valores dinâmicos (nada raster).
Este é nem mesmo uma pergunta necessariamente para PowerPoint: se eu poderia fazer isso com Keynote (como, gráficos automatizar pizza, gráficos de barras e lugares definidos com números e texto estático), em seguida, que também funciona
Editar : eu mencionei que eu sei que os gráficos gráficos de pizza PowerPoint / bar são gerados a partir de planilhas Xxcel. Há cerca de 3 deles na minha apresentação, juntamente com outros valores mudando em posições estáticas, através de 100 ou mais apresentações. Eu estou olhando para script de todos ou a maioria do processo.
Editar : Usando PowerPoint 2007, ou a versão mais recente do Keynote. método preferido de scripting com o Keynote provavelmente seria AppleScript, com PowerPoint 2007, ou Python / Django ou macros.
Solução
Infelizmente este tomou alguns dias para voltar para você, tinha que trabalhar para fora um problema. Aqui está uma maneira rápida e eficiente de fazer o que você está pedindo.
- Crie uma macro-habilitado PowerPoint.
- Criar um único gráfico de pizza na primeiro slide através do Insert | Chart comando na faixa de opções. vontade Excel abrir. Nas colunas, no Horizontal (Categoria) Axis A licença como é (ou seja, 1º tri, segundo Qrt, etc.). Na Legend Entradas (Série) Axis , expanda algumas colunas e adicionar mais dados. Certifique-se de nomes de coluna são únicos.
- Feche o Excel
- Pressione Alt + F11 para ir ao VBE.
- copiar / colar o código abaixo em um novo
módulo, alterando a seguinte
variáveis:
chartTemplatePath
e, se necessário,sc.Name
, a algo o resto de sua escolha. - Clique F5 na sub-rotina para executar. Agora você deve ter como muitos gráficos slides como existem colunas.
.
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
Se você está trabalhando com isso e os dados do gráfico desaparece do PPT principal, que está tudo bem, basta selecionar o gráfico, vá para Ferramentas de Gráfico | Design | Selecionar dados e selecione novamente o conjunto de dados como a tabela inteira.