Slik kopierer du automatisk fra Excel til PowerPoint ved hjelp av en VBA-makro

Hvis du noen gang ønsket å fremskynde overføringen av data fra en Microsoft Excel-arbeidsbok til Microsoft PowerPoint-presentasjonen din, er det veien å bruke en makro og Visual Basic for Applications. VBA er et dataprogrammeringsspråk som brukes i Microsoft Office-applikasjoner for å automatisere prosesser som å kopiere data fra Excel. En makro lar deg lagre et sett med instruksjoner som du kan utføre om og om igjen med et klikk på en knapp.

Trinn 1

Start Excel, skriv "Alan" i "A1", "Daniel" i "A2", "Kitzia" i "A3", "Oscar" i "A4" og "Yarexli" i "A5." Trykk "CTRL" og "S" for å lagre arbeidsboken i "C: \" som "ExcelFile.xlsx." Lukk Excel.

Steg 2

Start PowerPoint, klikk "Utvikler" -fanen og klikk "Makroer" for å starte dialogvinduet Makro. Skriv "copyFromExcel" under Makronavn og klikk på "Opprett" -knappen. Klikk på "Verktøy" -menyen og klikk "Referanser" for å åpne dialogboksen Referanser. Rull ned og merk av i boksen ved siden av "Microsoft Excel Objektbibliotek "og klikk" OK. "

Trinn 3

Kopier og lim inn følgende for å lage variablene du vil bruke til å kopiere dataene fra Excel:

Demp kildeXL som Excel. Applikasjon

Dim sourceBook Som Excel.Workbook Dim sourceSheet Som Excel.Worksheet Dim dataReadArray (10) Som streng Dim myPress Som presentasjon Dim newSlide As Slide 

Trinn 4

Sett verdier til objektvariablene:

Set sourceXL = Excel.Application Set sourceBook = sourceXL.Workbooks.Open ("G: \ ExcelFile.xlsx") Set sourceSheet = sourceBook.Sheets (1) Set myPres = ActivePresentation Set newSlide = myPres.Slides.Add (Index: = myPres .Slides.Count + 1, Layout: = ppLayoutText) 

Trinn 5

Les dataene i Excel-filen og lagre dem i en strengmatrise:

sourceSheet.Range ("A1"). Velg dataReadArray (0) = sourceSheet.Range ("A1"). Verdi sourceSheet.Range ("A2"). Velg dataReadArray (1) = sourceSheet.Range ("A2"). Verdi sourceSheet.Range ("A3"). Velg dataReadArray (2) = sourceSheet.Range ("A3"). VerdikildeSheet.Range ("A4"). Velg dataReadArray (3) = sourceSheet.Range ("A4"). Verdi sourceSheet.Range ("A5"). Velg dataReadArray (4) = sourceSheet.Range ("A5"). Verdi 

Trinn 6

Legg til dataene fra strengmatrisen til et nytt lysbilde i presentasjonen din:

newSlide.Shapes (1) .TextFrame.TextRange = "Data kopiert fra Excel" newSlide.Shapes (2) .TextFrame.TextRange = dataReadArray (0) & vbNewLine & _ dataReadArray (1) & vbNewLine & _ dataReadArb & _ dataReadArray (3) & vbNewLine & _ dataReadArray (4) & vbNewLine 

Trinn 7

Lukk arbeidsboken:

sourceBook.Close 

Bytt til PowerPoint-vinduet og klikk "Makroer". Klikk "Kjør" for å kjøre "copyFromExcel" -makroen og legg til et nytt lysbilde med dataene kopiert fra Excel-filen du opprettet i trinn 1.