Dynamiske diagrammer i Powerpoint: Diagrammer, der opdateres automatisk

Sidste ændring: 04/10/2024
Dynamisk grafik i PowerPint

Teknisk set kan du i PowerPoint linke en Excel-fil til en PowerPoint-præsentation. Det vil dog ikke gøre diagrammet dynamisk, og nogle gange er det svært at sige, hvornår diagrammet opdateres. Men hvad nu hvis vi vil endnu mere? Hvad hvis vi ønsker, at diagrammet skal opdateres under en præsentation?

Forestil dig, at du ønsker at præsentere en række dynamiske dias i et Office-miljø, hvor hvert dias viser de seneste diagrammer fra et opdateret Excel-dashboard. I andre tilfælde vil du måske undgå links til Excel-filer og blot have en dynamisk reference til din eller dine kildefiler. I dag vil vi undersøge, hvordan man skaber dynamiske diagrammer i PowerPoint ved hjælp af VBA.

Måske kan du være interesseret: Fordele ved PowerPoint sammenlignet med andre præsentationsværktøjer

En historisk oversigt over PowerPoint-grafik

Da vi startede PresentationPoint og fortsatte med at oprette DataPoint, som blev officielt udgivet i 2003, brugte PowerPoint 1997, 2000 og 2003 Microsoft Graph-motoren til at vise grafer på dine dias. Med version af PowerPoint eller Office 2007 blev en ny grafikmotor introduceret i PowerPoint. Det lignede nøjagtigt den bedste Microsoft Excel-kortmaskine.

Hvorfor ikke bruge linkede diagrammer?

Før vi begynder, vil vi gerne forklare, at du ikke behøver at bruge den fremgangsmåde, der er forklaret nedenfor, for at gøre det enkelt link et excel-diagram til en PowerPoint-præsentation. Formålet med denne øvelse er at undgå at linke og gøre den fuldstændig fleksibel i forhold til dine præferencer, når du vil opdatere dine diagrammer og endda opdatere Excel-filerne, før du gør det.

Oprettelse af dynamiske diagrammer i PowerPoint

Nedenfor er en trin-for-trin vejledning om, hvordan du opsætter pivotdiagrammer i PowerPoint og makroen:

Trin 1: Opret PowerPoint og figurer

Først skal vi oprette en PowerPoint-form, der vil blive brugt som en pladsholder til at markere placeringen og størrelsen af ​​vores diagram. Klik på billedet nedenfor for reference.

Dynamisk grafik i PowerPint

Trin 2: Opret et Excel-diagram

Dernæst skal vi oprette og navngive et Excel-diagram. Dette vil blive kopieret og indsat som et billede i vores PowerPoint for at forhindre sammenkædning og sikre, at formateringen er identisk med, hvordan den vises i din Excel-fil.

Dynamisk grafik i PowerPint

Trin 3: Opret den dynamiske diagram VBA-makro i PowerPoint

Hvis du ikke ved, hvordan du får adgang til fanen udvikler, kan du fortsætte på samme måde, som du gør det i Excel. Derefter skal du oprette et nyt VBA-modul og kopiere følgende VBA-kode:

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

#Hvis VBA7 Så

Offentlig erklærer PtrSafe Sub Sleep Lib «kernel32» (ByVal milliseconds As LongPtr) 'MS Office 64 Bit

#Andet

Offentlig erklærer Sub Sleep Lib «kernel32» (ByVal millisekunder så længe) 'MS Office 32 Bit

#EndIf

 

Funktion CopyChartFromExcelToPPT(excelfilsti som streng, arknavn som streng, diagramnavn som streng, dstSlide så lang, valgfri form venstre så lang, valgfri form top så lang, valgfri form, bredde så lang, valgfri form højde så lang) som form

Ved fejl Gå til ErrorHandl 'Håndter fejl

 

'Indstil variabler og åbn Excel

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

Indstil eApp = New Excel.Application

eApp.Visible = Falsk

Indstil wb = eApp.Workbooks.Open(excelFilePath)

Indstil ppt = ActivePresentation

'Kopier diagram i Excel

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

 

'Indsæt i første dias i aktiv PowerPoint-præsentation

ppt.Slides(dstSlide).Shapes.PasteSpecial ppPasteBitmap

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

'Luk og ryd op i Excel

wb.Close SaveChanges:=False

eApp.Afslut

Indstil wb = Ingenting: Indstil eApp = Intet

 

'Flyt den nye form, hvis venstre/top findes

Hvis ikke (Mangler (formTop)) Så

Med CopyChartFromExcelToPPT

.Left = shapeLeft

.Top = formTop

Slut med

End If

Hvis ikke (mangler (formbredde)) så

Med CopyChartFromExcelToPPT

.LockAspectRatio = Falsk

.Width = shapeWidth

.Højde = formHøjde

Slut med

End If

Afslut funktion

ErrorHandl:

'Sørg for at lukke projektmappen og Excel og returnere False

On Error Resume Next

Hvis ikke (eApp er ingenting) så

wb.Close SaveChanges:=False

eApp.Afslut

End If

Indstil CopyChartFromExcelToPPT = Intet

End Function

Lad mig bryde det her ned. Tidligere definerede vi først funktionen VBA søvn, da vi vil bruge det som en forsinkelsesmekanisme mellem opdateringer. Dernæst definerer vi funktionen CopyChartFromExcelToPPT som grundlæggende gør følgende:

  1. Åbner en Excel-fil defineret med excelFilePath.
  2. Kopierer diagrammets diagramnavn fra arket arknavn.
  3. Indsætter det i ActivePresentation på diaset dstSlide og placering shapeTop og shapeLeft, med størrelsen shapeWidth og shapeHeight

Som du kan se, er dette en generisk funktion, som du kan genbruge til dit eget formål, uanset hvilket brugseksempel du skal bruge.

Trin 4: Opdater diagrammet automatisk

Lad os nu oprette et simpelt scenario ved hjælp af den generiske funktion til at kopiere et diagram fra Excel til PowerPoint:

  • Trin 1: kører i tilstand Presentación.
  • Trin 2: hvert sekund opdaterer excel-diagrammet og opdaterer tidsstemplet.
  • Trin 3: afslutte præsentationstilstand.

Nedenfor gør VBA-koden præcis det:

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 diagramPlaceholder As Shape, timeShape As Shape, slideNumber As Long

'Få pladsholderformer, skjul ChartPlaceholder

slideNumber = 1

Indstil chartPlaceholder = ActivePresentation.Slides(slideNumber).Shapes("ChartPlaceholder"): chartPlaceholder.Visible = msoFalse

Indstil timeShape = ActivePresentation.Slides(slideNumber).Shapes("TimeStamp")

 

'Start præsentationen!

ActivePresentation.SlideShowSettings.Run

 

'Opdater diagrammet og indstil tidsstemplet

Indstil shp = CopyChartFromExcelToPPT(ActivePresentation.Path & «\Test.xlsx», «Sheet1», «Chart 1», slideNumber, chartPlaceholder.Left, chartPlaceholder.Top, chartPlaceholder.Width, chartPlaceholder.Height)

timeShape.TextFrame.TextRange.Text = Format(Nu(), «ÅÅÅÅ-MM-DD TT:MM»)

Doevents

Sov xnumx

For i = 0 til 3

'Opdater diagrammet, slet gammel form og sæt tidsstemplet

Indstil shp1 = CopyChartFromExcelToPPT(ActivePresentation.Path & «\Test.xlsx», «Sheet1», «Chart 1», slideNumber, chartPlaceholder.Left, chartPlaceholder.Top, chartPlaceholder.Width, chartPlaceholder.Height)

shp.Slet: Indstil shp = shp1

timeShape.TextFrame.TextRange.Text = Format(Nu(), «ÅÅÅÅ-MM-DD TT:MM»)

'Sov i 1 sekund

Doevents

Sov xnumx

Næste jeg

'Slut på præsentation!

ActivePresentation.SlideShowWindow.View.Exit

'Slet diagrammet, og gør ChartPlaceholder synlig igen

shp.Slet

chartPlaceholder.Visible = msoTrue

End Sub

Brug eksempler til dynamiske diagrammer i PowerPoint

For os en måde at animere Excel-diagrammer i PowerPoint introducerer en ny palet af muligheder for yderligere at flytte grænserne for, hvad vi kan gøre med PowerPoint. Nedenfor er en kort liste over ideer, der kan hjælpe dig med at forestille dig, hvor nyttigt det kan være:

  1. Opret en dynamisk Office-præsentation med automatisk opdatering af diagrammer fra flere Excel-filer.
  2. Opret en knap til manuelt at opdatere et eller alle diagrammerne i dit PowerPoint-dæk.
  3. Opret en nem måde at linke dine PowerPoint-diagrammer til Excel-filer, der kan flytte (for eksempel link til Excel-filer i samme mappe).

Vælg mellem dynamiske tabeller og diagrammer i PowerPoint

Du kan stadig bruge det nye grafikobjekt til at vise grafik i realtid på dine dias. Men du vil se et datablad blinke hver gang DataPoint åbne diagrammets dataindhold. Til onlinepræsentationer, eller med andre ord, når du kører et PowerPoint-diasshow på en dedikeret computer eller fjernsynsskærm for dit publikum, og du vil undgå at se det regneark, så skal du bruge den 'ældre' grafik.

Måske vil du vide: Sådan bruger du VBA i PowerPoint: En begyndervejledning

Sådan indsætter du en grafik på dit dias

Med den seneste version af DataPoint skal du blot klikke for at åbne menuen indsætte af din PowerPoint. I slutningen af ​​de originale knapper finder du en ny gruppe af Datapunkter med en knap Graphic. Når du er på et dias, skal du blot klikke på knappen Graphic og det vil indsætte et nyt standard diagramobjekt for dig. Dette opfører sig som den nye mulighed Indsæt > Diagram.

Indsæt et diagram på dit dias

Når du har konfigureret en dataforbindelse til en datakilde efter eget valg og valgt dette diagramobjekt, skal du klikke Datapunkt og derefter på knappen Graphic for at tildele dataforbindelsesdataene til denne diagram/graf.

Indsæt et diagram på dit dias

Dette diagramobjekt kan perfekt bruges i dit diasshow til vise realtidsinformation som en graf bar eller cirkulær. Men den største fordel er, at du ikke vil se et datablad med dine oplysninger blinkende på din skærm.

Indsæt et diagram på dit dias

Når du redigerer grafen

Hver gang du klikker for at redigere et diagramobjekt, vil PowerPoint fortælle dig følgende: 'For at redigere dit diagram ved hjælp af de nyeste PowerPoint-funktioner, skal du konvertere det til det nyere format'. Vælge Rediger eksisterende her for at fortsætte med at bruge objektet Microsoft Graph.

Rediger diagrammet

PowerPoint vil spørge dig om dette hver gang. Hvis du finder dette irriterende og vil fortsætte med at bruge grafik, kan du måske deaktivere dette spørgsmål. For at gøre dette skal du gå til registreringsdatabasen og tilføje en ny nøgle (DWORD) kaldet MSGraphEnable til denne sti nedenfor, og indstil værdien til 1.

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

Værdien 16,0 repræsenterer her versionen af PowerPoint 2016. Brug 15,0 til PowerPoint 2013 og 14,0 for PowerPoint 2010.

Sådan opretter du en dynamisk præsentation

Hvis du har en præsentation med nogle få diagrammer og rapporter, ved du aldrig, hvor ofte du skal opdatere den. Opret for eksempel en kvartalsvis resultatrapport og modtag nye data hver time. I dette tilfælde er det bedre i stedet for PowerPoint-tabeller og diagrammer indlejre et excel-objekt. Oplysningerne opdateres automatisk efter opdateringer i Excel-tabellen.

Lav en dynamisk præsentation

For at oprette et dias i din PowerPoint-præsentation med automatisk opdaterede data skal du gøre følgende:

Trin 1: Vælg et diagram eller en tabel i Excel, som du vil tilføje til præsentationen, og gør et af følgende:

  1. Klik på Ctrl + C.
  2. Tab Start, i gruppen UdklipsholderKlik på knappen kopi.

Lav en dynamisk præsentation

  1. Højreklik på det valgte objekt og vælg derefter kopi fra pop op-menuen.

Trin 2: Åbn præsentationssliden, hvor du vil indsætte objektet Excel og derefter i fanen Start, i gruppen Udklipsholder, vælg muligheden fra rullelisten Catch.

  • 1. Hvis du prøver at indsætte en graf.

Lav en dynamisk præsentation

Fra listen Indsætindstillinger skal du vælge:

  • Brug måltema og linkdata.
  • Vedligehold kildeformat og link data.

Brug Target Theme vil adoptere farverne, skrifttyperne og effekterne af temaet for den målpræsentation, du indsætter i. Kildefarver vil blive ændret, kilder og effekter. Bevar kildeformatering vil bevare temafarverne, skrifttyperne og effekterne af den præsentation, du kopierer fra. Alle farver, skrifttyper og effekter vil være de samme som i kildeprojektmappen.

Link data Dette er, hvad du vil bruge, hvis du ønsker, at oplysningerne i diagrammet eller regnearket skal opdateres automatisk, når kildedataene opdateres. Der oprettes et link til originalen, og ændringer af kilden vil foretage ændringer i destinationsdokumentet.

¡forsigtighed! Fordi denne metode opretter et link til et specifikt Excel-regneark, vil du ikke være i stand til at opdatere diagrammet, hvis du flytter eller sletter kildefilen.

Opret dynamiske præsentationer

 2.2.  Hvis du vil indsætte en tabel, klik på Indsæt speciel:

Opret dynamiske præsentationer

Bemærk: Enhver anden indstilling for indsæt opretter ikke et link til kildefilen, så eventuelle ændringer i Excel-tabellen opdaterer ikke tabellen i PowerPoint.

I dialogboksen Særlig lim, markér afkrydsningsfeltet Indsæt link og klik acceptere:

Opret dynamiske præsentationer

Nu, hvis du ændrer noget i diagrammet eller tabellen, vil du se ændringerne i PowerPoint-præsentationen:

Opret dynamiske præsentationer

Andre muligheder for at indsætte et Excel-diagram:

  • Brug måltema og indlejr projektmappe.
  • Vedligehold kildeformatet og indlejr projektmappen.

Integrer projektmappe vil oprette en kopi af dataene og indlejre dem i destinationsdokumentet. Fremtidige ændringer af skrifttypen vil ikke blive afspejlet. Du kan manuelt ændre diagrammet ved at dobbeltklikke på det og foretage ændringer i miniregnearket, der åbnes i måldokumentet.

Ændringer, du foretager i destinationsdokumentet, påvirker heller ikke kildedataene. Indlejring af grafen og dine kildedata er nyttig til at dele dokumenter mellem seerens computer og din egen.

Du kan dog oprette meget store filer. Kildefilobjektet vil blive vist som et billede. Enhver ændring af skrifttypen ændrer ikke dette billede. Du kan derefter redigere billedet som alle andre, men du vil ikke være i stand til at ændre eller åbne kildedataene eller ændre grafen.

Tag et kig på: Sådan bruges lasermarkøren i Powerpoint (grøn, rød og blå)

Pensamientos finales

Klar, du ved nu, hvordan du arbejder med dynamisk grafik i PowerPoint. Vi er sikre på, at den nye form for grafer, der blev introduceret i PowerPoint, og som Microsoft udviklede til de nyere versioner af PowerPoint, er meget bedre for os alle sammen, sammenlignet med det ældre Microsoft Graph-objekt. Men som vi har lært, er opdatering af dataarket uden at blinke dataarket teknisk umuligt lige nu og forårsager korruption. Vi håber, at denne vejledning har været nyttig for dig, og at du besøger os igen.

  Sådan laver du en trifold i Word. 2 nemme måder