Como automatizar a criação de slides a partir de um arquivo Excel?

Pergunta rápida sobre a automação de slides no Excel / PowerPoint.

Aqui está a configuração:

    Todos os meses, preciso de preencher um PowerPoint. [[8]] nele, eu tenho 5 slides por país, para 30 países. Em cada slide, há de 1 a 3 gráficos
  • Eu uso Dados de uma tabela de pivô no Excel para preencher esses gráficos e gostaria de automatizar o processo

O Que eu já fiz:

    A automatização em VBA para extrair dados a partir da tabela Pivot foi feito, tudo está bem deste lado

O que precisa ser feito:

  • copiar / colar os dados do ficheiro Excel dentro do gráfico correspondente no PowerPoint

o que eu estava a pensar fazer, ou:

  • Copie os dados directamente no gráfico, mas será sequer possível?
  • crie um gráfico no arquivo Excel e copie-o para o PowerPoint (não pode ser uma imagem, os dados por trás do o gráfico tem de ser acessível)
Qual é a maneira mais fácil de fazer isto?

Muito obrigado pelo apoio!

EDIT: estou no Mac, não sabia que o VBA / Office seria diferente, mas é...

Author: Community, 2016-06-15

3 answers

Eu optaria pela segunda opção. Uma vez que você já realizou a automação para a tabela pivô, isso pode levá-lo a escrever o que você quer para.
Nota: como comentado, você precisa adicionar uma referência para o Microsoft Power Point para estar disponível para usar o seguinte:
Dim PPInstance As PowerPoint.Application
Dim PPSlide As PowerPoint.Slide
Dim SlideShow As PowerPoint.Presentation
    For Each SlideShow In PPInstance.Presentations
    On Error GoTo Err01PowerPoint_Select
    Set PPInstance = GetObject(, "Powerpoint.Application")
    If SlideShow.Name = "DesiredValue" Then '1. If SlideShow.Name = "DesiredValue"
    For Each PPSlide In SlideShow.Slides
    ' paste and select the chart picture
     ActiveSheet.ChartObjects(YourChartObjectInExcel).Copy
     Application.Wait Now + TimeValue("00:00:01")
     'It may lost itself
     .Shapes.Paste
     Application.CutCopyMode = False
     'align the chart
     'you can definetly align and set the size you desire for the chart in PP, however, I didn't manage to make it work, you may want to search for it
     'PPInstance.ActiveWindow.Selection.ShapeRange.Align msoAlignCenters, True
     'PPInstance.ActiveWindow.Selection.ShapeRange.Align msoAlignMiddles, True
    Next PPSlide
    Exit For
    Next SlideShow
    If 1 = 2 Then '99.if error
    Err01PowerPoint_Select:
    MsgBox "No Powerpoint presentations are opened!", vbCritical
    End If '99.if error 
 0
Author: Sgdva, 2016-06-15 16:30:25

Tenta isto

  • no excel copie as células que deseja na sua apresentação
  • Volte para power point e faça um "Past special" (home tab> past drop down> past special ou Cntrl+Alt+V).

    • escolha choose this option

Isto deve inserir uma tabela ligada no seu 'slide'

Quando quiser actualizar

Ir para: Ficheiro> info

E escolher

enter image description here

Do fundo direita

A seguir Faz isto

enter image description here

Isto deve chegar

Espero que te ajude.
 0
Author: aFast, 2016-06-15 17:56:03

Você está querendo automatizar entre aplicativos MS Office, Excel e Powerpoint. A Microsoft usa o termo programaticamente para que uma pesquisa Web para programaticamente excel para o powerpoint o Inicie. Pode adicionar VBA à pesquisa.

 0
Author: Ron Royston, 2016-06-15 18:24:26