Automatisch kopiëren van Excel naar PowerPoint met behulp van een VBA-macro

Als u ooit de overdracht van gegevens van een Microsoft Excel-werkmap naar uw Microsoft PowerPoint-presentatie wilde versnellen, dan is het gebruik van een macro en Visual Basic for Applications de juiste keuze. VBA is een computerprogrammeertaal die wordt gebruikt in Microsoft Office-toepassingen om processen te automatiseren, zoals het kopiëren van gegevens uit Excel. Met een macro kunt u een reeks instructies opslaan die u met een klik op de knop steeds opnieuw kunt uitvoeren.

Stap 1

Start Excel, typ "Alan" in "A1", "Daniel" in "A2", "Kitzia" in "A3", "Oscar" in "A4" en "Yarexli" in "A5". Druk op "CTRL" en "S" om de werkmap op te slaan in "C:\" als "ExcelFile.xlsx." Sluit Excel af.

Stap 2

Start PowerPoint, klik op het tabblad "Ontwikkelaar" en klik op "Macro's" om het dialoogvenster Macro te openen. Typ "copyFromExcel" onder Macronaam en klik op de knop "Maken". Klik op het menu "Extra" en klik op "Referenties" om het dialoogvenster Referenties te openen. Scroll naar beneden en vink het vakje aan naast "Microsoft Excel Objectbibliotheek" en klik op "OK".

Stap 3

Kopieer en plak het volgende om de variabelen te maken die u gaat gebruiken om de gegevens uit Excel te kopiëren:

Dim sourceXL As Excel.Application

Dim sourceBook As Excel.Workbook Dim sourceSheet As Excel.Worksheet Dim dataReadArray(10) As String Dim myPress As Presentation Dim newSlide As Slide 

Stap 4

Stel waarden in op de objectvariabelen:

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) 

Stap 5

Lees de gegevens in het Excel-bestand en sla het op in een String-array:

sourceSheet.Range("A1").Select dataReadArray(0) = sourceSheet.Range("A1").Value sourceSheet.Range("A2").Select dataReadArray(1) = sourceSheet.Range("A2").Value sourceSheet.Range("A3").Select dataReadArray(2) = sourceSheet.Range("A3").Value sourceSheet.Range("A4").Select dataReadArray(3) = sourceSheet.Range("A4").Value sourceSheet.Range("A5").Selecteer dataReadArray(4) = sourceSheet.Range("A5").Value 

Stap 6

Voeg de gegevens uit de String-array toe aan een nieuwe dia in uw huidige presentatie:

newSlide.Shapes(1).TextFrame.TextRange = "Gegevens gekopieerd uit Excel" newSlide.Shapes(2).TextFrame.TextRange = dataReadArray(0) & vbNewLine & _ dataReadArray(1) & vbNewLine & _ dataReadArray(2) & vbNewLine & _ dataReadArray(3) & vbNewLine & _ dataReadArray(4) & vbNewLine 

Stap 7

Sluit de werkmap:

sourceBook.Close 

Schakel over naar het PowerPoint-venster en klik op 'Macro's'. Klik op "Uitvoeren" om de macro "copyFromExcel" uit te voeren en voeg een nieuwe dia toe met de gegevens die zijn gekopieerd uit het Excel-bestand dat u in stap 1 hebt gemaakt.