Gràfics Dinàmics A Powerpoint: Gràfics Que S'Actualitzen Automàticament

Darrera actualització: 04/10/2024
Gràfics dinàmics a PowerPint

Tècnicament, a PowerPoint pots vincular un fitxer d'Excel a una presentació de PowerPoint. Això, però, no farà que el gràfic sigui dinàmic i, de vegades, és difícil dir quan s'actualitzarà el gràfic. Però què passa si volem encara més? Què passa si volem que el gràfic s'actualitzi durant una presentació?

Imagina voler presentar una sèrie de diapositives dinàmiques en un entorn dOffice, cada diapositiva mostrant els gràfics més recents dun tauler dExcel actualitzat. En altres casos, és possible que vulgueu evitar qualsevol enllaç a arxius dExcel i simplement tenir una referència dinàmica al teu arxiu o arxius dorigen. Avui explorarem com crear gràfics dinàmics a PowerPoint usant VBA.

Potser et pot interessar: Avantatges De PowerPoint Davant d'Altres Eines De Presentació

Una descripció històrica dels gràfics a PowerPoint

Quan vam començar amb PresentationPoint i vam crear DataPoint, que es va llançar oficialment el 2003, PowerPoint 1997, 2000 i 2003 usaven el motor Microsoft Graph per visualitzar gràfics a les teves diapositives. Amb versió de PowerPoint o Office 2007, es va introduir un nou motor de gràfics a PowerPoint. Semblava exactament al millor motor de gràfics de Microsoft Excel.

Per què no fer servir gràfics vinculats?

Abans de començar, volem explicar que no necessites fer servir l'enfocament que s'explica a continuació per simplement vincular un gràfic d'Excel a una presentació de PowerPoint. El propòsit d'aquest exercici és evitar la vinculació i fer-ho completament flexible segons les preferències quan vulguis actualitzar els teus gràfics i fins i tot actualitzar els fitxers d'Excel abans de fer-ho.

Creació de gràfics dinàmics a PowerPoint

A continuació es mostra un tutorial pas a pas sobre com configurar els gràfics dinàmics a PowerPoint i la macro:

Pas 1: Crea el PowerPoint i les formes

Primer, hem de crear una forma de PowerPoint que es farà servir com a marcador de posició per marcar la ubicació i la mida del nostre gràfic. Feu clic a la imatge de sota per a una referència.

Gràfics dinàmics a PowerPint

Pas 2: Crea un gràfic d'Excel

A continuació, hem de crear i anomenar un gràfic d'Excel. Això es copiarà i enganxarà com una imatge al nostre PowerPoint per evitar la vinculació i assegurar que el format sigui idèntic a com es visualitza al vostre fitxer d'Excel.

Gràfics dinàmics a PowerPint

Pas 3: Crear la macro VBA de gràfics dinàmics a PowerPoint

Si no saps com accedir a la pestanya desenvolupador, pots procedir de manera similar a com ho fas a Excel. A continuació, crea un nou mòdul VBA i copia el codi VBA següent:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

#If VBA7 Then

Public Declare PtrSafe Sub Sleep Lib kernel32 (ByVal milliseconds As LongPtr) 'MS Office 64 Bit

#Else

Public Declareu Sub Sleep Lib kernel32 (ByVal milliseconds As Long) 'MS Office 32 Bit

#End If

 

Function CopyChartFromExcelToPPT(excelFilePath As String, sheetName As String, chartName As String, dstSlide As Long, Optional shapeLeft As Long, Optional shapeTop As Long, Optional shapeWidth As Long, Optional shapeHeight As Long) As Shape

On Error GoTo ErrorHandl 'Handle Errors

 

'Set Variables and Open Excel

Dim eApp As Excel.Application, wb As Excel.Workbook, ppt As PowerPoint.Presentation, ws As Excel.Worksheet

Set eApp = New Excel.Application

eApp.Visible = False

Set wb = eApp.Workbooks.Open(excelFilePath)

Set ppt = ActivePresentation

'Copy Chart in Excel

wb.Sheets(sheetName).ChartObjects(chartName).Copy

 

'Pasti into first slide in active PowerPoint presentation

ppt.Slides(dstSlide).Shapes.PasteSpecial ppPasteBitmap

Set CopyChartFromExcelToPPT = ppt.Slides(dstSlide).Shapes(ppt.Slides(dstSlide).Shapes.Count)

'Close and clean-up Excel

wb.Close SaveChanges:=Fals

eApp.Quit

Set wb = Nothing: Set eApp = Nothing

 

'Move the new shape if left/top provided

If Not (IsMissing(shapeTop)) Then

With CopyChartFromExcelToPPT

.Left = shapeLeft

.Top = shapeTop

Acaba amb

End If

If Not (IsMissing(shapeWidth)) Then

With CopyChartFromExcelToPPT

.LockAspectRatio = False

.Width = shapeWidth

.Height = shapeHeight

Acaba amb

End If

Funció de sortida

ErrorHandl:

'Make sure to close the workbook and Excel and return False

On Error Resume Next

If Not (eApp Is Nothing) Then

wb.Close SaveChanges:=Fals

eApp.Quit

End If

Set CopyChartFromExcelToPPT = Nothing

End Function

Deixa'm desglossar això. Anteriorment, primer definim la funció VBA Sleep, ja que la farem servir com un mecanisme de demora entre actualitzacions. A continuació definim la funció CopyChartFromExcelToPPT que bàsicament fa el següent:

  1. Obre un fitxer d'Excel definit amb excelFilePath.
  2. Copia el gràfic chartName del full sheetName.
  3. L'enganxa a ActivePresentation a la diapositiva dstSlide i la ubicació shapeTop i shapeLeft, amb la mida de shapeWidth i shapeHeight

Com podeu veure, aquesta és una funció genèrica que podeu reutilitzar per al vostre propi propòsit, independentment de l'exemple d'ús que utilitzeu.

Pas 4: Actualitza automàticament el gràfic

Ara crearem un escenari simple usant la funció genèrica per copiar un gràfic d'Excel a PowerPoint:

  • Pas 1: executa en mode Presentació.
  • Pas 2: cada segon actualitza el gràfic dExcel i actualitza el segell de temps.
  • Pas 3: sal del mode de presentació.

A continuació, el codi VBA fa exactament això:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Sub TestAutoUpdate()

Dim shp As Shape, shp1 As Shape, shpTxt As Shape

Dim chartPlaceholder As Shape, timeShape As Shape, slideNumber As Long

'Get placeholder shapes, hide ChartPlaceholder

slideNumber = 1

Set chartPlaceholder = ActivePresentation.Slides(slideNumber).Shapes(«ChartPlaceholder»): chartPlaceholder.Visible = msoFalse

Set timeShape = ActivePresentation.Slides(slideNumber).Shapes(«TimeStamp»)

 

'Start the presentation!

ActivePresentation.SlideShowSettings.Run

 

'Update the Chart and set time stamp

Set shp = CopyChartFromExcelToPPT(ActivePresentation.Path & "\Test.xlsx", "Sheet1", "Chart 1", slideNumber, chartPlaceholder.Left, chartPlaceholder.Top, chartPlaceholder.Width, chart

timeShape.TextFrame.TextRange.Text = Format(Now(), «YYYY-MM-DD HH:MM»)

DoEvents

Dormir 1000

Per i = 0 a 3

'Update the Chart, delete old shape and set time stamp

Set shp1 = CopyChartFromExcelToPPT(ActivePresentation.Path & "\Test.xlsx", "Sheet1", "Chart 1", slideNumber, chartPlaceholder.Left, chartPlaceholder.Top, chartPlaceholder.Width, chart

shp.Delete: Set shp = shp1

timeShape.TextFrame.TextRange.Text = Format(Now(), «YYYY-MM-DD HH:MM»)

'Sleep for 1 second

DoEvents

Dormir 1000

Següent i

'End of presentation!

ActivePresentation.SlideShowWindow.View.Exit

'Deleteu el chart and make the ChartPlaceholder visible again

shp.Delete

chartPlaceholder.Visible = msoTrue

End Sub

Casos d'ús de gràfics dinàmics a PowerPoint

Per a nosaltres, una forma de animar gràfics d'Excel a PowerPoint presenta una paleta d'opcions nova per ampliar encara més els límits del que podem fer amb PowerPoint. A continuació, una breu llista d'idees que et poden ajudar a imaginar com pot ser d'utilitat:

  1. Creeu una presentació dinàmica de l'Office amb gràfics d'actualització automàtica de diversos fitxers d'Excel.
  2. Crea un botó per actualitzar manualment un o tots els gràfics a la teva plataforma de PowerPoint.
  3. Crea una manera fàcil de vincular els teus gràfics a PowerPoint a fitxers d'Excel que es podrien moure (per exemple, vincular a fitxers d'Excel al mateix directori).

Tria entre taules i gràfics dinàmics a PowerPoint

Encara pots utilitzar el nou objecte de gràfics per mostrar gràfics en temps real a les teves diapositives. Però veuràs un full de dades parpellejant cada cop que DataPoint obriu el contingut de les dades del gràfic. Per a presentacions en línia, o en altres paraules, quan executes una presentació de diapositives de PowerPoint en un ordinador dedicada o en una pantalla de televisió per a la teva audiència, i vols evitar veure aquest full de treball, llavors has de fer servir els gràfics 'més antics '.

Potser vols saber: Com utilitzar VBA A PowerPoint: Una Guia Per a Principiants

Com inserir un gràfic a la teva diapositiva

Amb la darrera versió de DataPoint, simplement fes clic per obrir el menú Insereix del teu PowerPoint. Al final dels botons originals, trobareu un nou grup de Punts de dades amb un botó Gràfic. Quan estiguis en una diapositiva, simplement fes clic al botó Gràfic i inserirà un nou objecte de gràfic predeterminat per a tu. Això es comporta com la nova opció Inserir > Gràfic.

Inserir un gràfic a la teva diapositiva

Quan hagis configurat una connexió de dades a una font de dades de la teva elecció i hagis seleccionat aquest objecte de gràfic, fes clic a Punt de dades i després en el botó Gràfic per assignar les dades de la connexió de dades a aquest quadre/gràfic.

Inserir un gràfic a la teva diapositiva

Aquest objecte de gràfic es pot utilitzar perfectament a la teva presentació de diapositives per mostrar informació en temps real com un gràfic de barres o circular. Però, l'avantatge més gran, no veuràs un full de dades amb la teva informació parpellejant a la pantalla.

Inserir un gràfic a la teva diapositiva

Quan edites el gràfic

Cada vegada que feu clic per editar un objecte de gràfic, PowerPoint us dirà el següent: 'Per editar el teu gràfic usant les funcions més recents de PowerPoint, hauràs de convertir-lo al format més nou'. Tria Edita existent aquí per seguir usant l'objecte de Microsoft Graph.

Editar el gràfic

PowerPoint us preguntarà això cada vegada. Si trobes això molest i vols seguir usant gràfics, llavors potser deshabiliteu aquesta pregunta. Per fer-ho, vés al registre i afegeix una nova clau (DWORD) trucada MSGraphEnable a aquesta ruta a continuació, i estableix el valor a 1.

\HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Common\Charting

El valor 16,0 aquí representa la versió de PowerPoint 2016. Usa 15,0 per PowerPoint 2013 i 14,0 per PowerPoint 2010.

Com crear una presentació dinàmica

Si tens una presentació amb alguns gràfics i informes, mai no saps amb quina freqüència necessitaràs actualitzar-la. Per exemple, crea un informe de rendiment trimestral i rep dades noves cada hora. En aquest cas, en lloc de taules i gràfics de PowerPoint, és millor incrustar un objecte d'Excel. La informació s'actualitza automàticament després de les actualitzacions a la taula d'Excel.

Crear una presentació dinàmica

Per crear una diapositiva a la presentació de PowerPoint amb dades actualitzades automàticament, fes el següent:

Pas 1: selecciona un gràfic o una taula en Excel que vulguis afegir a la presentació i fes una de les accions següents:

  1. Fes clic a Ctrl + C.
  2. A la pestanya Inici, al grup Porta-retalls, Fes clic al botó Copiar.

Crear una presentació dinàmica

  1. Fes clic dret a l'objecte seleccionat i després escull Copiar al menú emergent.

Pas 2: obre la diapositiva de la presentació, on vols inserir l'objecte de Excel i després, a la pestanya Inici, al grup Porta-retalls, tria a la llista desplegable, l'opció Agafar.

  • 1. Si intentes enganxar un gràfic.

Crear una presentació dinàmica

A la llista Opcions d'enganxat, tria:

  • Usar tema de destinació i dades denllaç.
  • Mantenir el format dorigen i les dades denllaç.

Usar tema de destinació adoptarà els colors, les fonts i els efectes del tema de la presentació de destinació en què estàs enganxant. Els colors d'origen es canviaran, les fonts i els efectes. Conservar el format d'origen mantindrà els colors del tema, les fonts i els efectes de la presentació des de la qual esteu copiant. Tots els colors, fonts i efectes seran els mateixos que al llibre de treball d'origen.

Link Data és el que utilitzaràs si vols que la informació al gràfic o el full de càlcul s'actualitzi automàticament quan s'actualitzin les dades d'origen. Es crea un enllaç a l'original, i les modificacions a l'origen faran els canvis al document de destinació.

¡precaució! Com que aquest mètode crea un enllaç a un full de càlcul d'Excel específic, si moveu o elimineu el fitxer d'origen, no podreu actualitzar el gràfic.

Crear presentacions dinàmiques

 2.2.  Si vols inserir una taula, fes clic a Enganxat especial:

Crear presentacions dinàmiques

Nota: qualsevol altra opció d'enganxat no crea un enllaç al fitxer d'origen, de manera que qualsevol canvi a la taula d'Excel no actualitza la taula al PowerPoint.

En el quadre de diàleg enganxat especial, Marca la casella de verificació Enganxa enllaç i fes clic a Acceptar:

Crear presentacions dinàmiques

Ara, si canvies qualsevol cosa al gràfic oa la taula, veuràs els canvis a la presentació de PowerPoint:

Crear presentacions dinàmiques

Altres opcions per enganxar un gràfic d'Excel:

  • Usar tema de destinació i incrustar llibre de treball.
  • Mantenir el format dorigen i incrustar el llibre de treball.

Embed Workbook crearà una còpia de les dades i la incrustarà al document de destinació. Els canvis futurs a la font no es reflectiran. Pots canviar manualment el gràfic fent-hi doble clic i fent canvis al minifull de càlcul que s'obre dins del document de destinació.

Els canvis que feu al document de destinació tampoc no afectaran les dades d'origen. Incrustar el gràfic i les vostres dades d'origen és útil per compartir documents entre l'ordinador de l'espectador i la vostra.

No obstant això, podeu crear fitxers molt grans. L'objecte del fitxer d'origen es mostrarà com a imatge. Qualsevol canvi a la font no canvia aquesta imatge. Després podeu editar la imatge com qualsevol altra, però no podreu canviar ni obrir les dades d'origen ni canviar el gràfic.

Fes una ullada a: Com utilitzar el Punter Làser En Powerpoint (Verd, Vermell i Blau)

pensaments finals

A punt, ja saps treballar amb gràfics dinàmics a PowerPoint. Estem segurs que la nova forma de gràfics que es va introduir a PowerPoint i que Microsoft va desenvolupar per a les versions més recents de PowerPoint és molt millor per a tots nosaltres, en comparació amb lobjecte de Microsoft Graph més antic. Però, com hem après, l'actualització del full de dades sense flaixar el full de dades és tècnicament impossible en aquest moment i causa corrupcions. Esperem que aquest tutorial us hagi estat útil i que ens visitis novament.

  LibreOffice vs WPS Office vs OnlyOffice per a Windows: comparativa pràctica