Comment copier automatiquement d'Excel vers PowerPoint à l'aide d'une macro VBA
Si vous avez déjà voulu accélérer le transfert de données d'un classeur Microsoft Excel vers votre présentation Microsoft PowerPoint, l'utilisation d'une macro et de Visual Basic pour Applications est la solution. VBA est un langage de programmation informatique utilisé dans les applications Microsoft Office pour automatiser des processus tels que la copie de données à partir d'Excel. Une macro vous permet d'enregistrer un ensemble d'instructions que vous pouvez exécuter encore et encore en cliquant sur un bouton.
Étape 1
Lancez Excel, tapez "Alan" dans "A1", "Daniel" dans "A2", "Kitzia" dans "A3", "Oscar" dans "A4" et "Yarexli" dans "A5". Appuyez sur "CTRL" et "S" pour enregistrer le classeur dans "C:\" en tant que "ExcelFile.xlsx." Fermez Excel.
Étape 2
Lancez PowerPoint, cliquez sur l'onglet "Développeur" et cliquez sur "Macros" pour lancer la fenêtre de dialogue Macro. Tapez "copyFromExcel" sous le nom de la macro et cliquez sur le bouton "Créer". Cliquez sur le menu "Outils" et cliquez sur "Références" pour lancer la fenêtre de dialogue Références. Faites défiler vers le bas et cochez la case à côté de "Microsoft Excel
Étape 3
Copiez et collez les éléments suivants pour créer les variables que vous utiliserez pour copier les données d'Excel :
Dim sourceXL en tant qu'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
Étape 4
Définissez des valeurs sur les variables d'objet :
Définir sourceXL = Excel.Application Définir sourceBook = sourceXL.Workbooks.Open("G:\ExcelFile.xlsx") Définir sourceSheet = sourceBook.Sheets(1) Définir myPres = ActivePresentation Définir newSlide = myPres.Slides.Add(Index:=myPres .Slides.Count + 1, Layout:=ppLayoutText)
Étape 5
Lisez les données dans le fichier Excel et stockez-les dans un tableau String :
sourceSheet.Range("A1").Select dataReadArray(0) = sourceSheet.Range("A1").Valeur sourceSheet.Range("A2").Select dataReadArray(1) = sourceSheet.Range("A2").Value sourceSheet.Range("A3").Select dataReadArray(2) = sourceSheet.Range("A3").Valeur sourceSheet.Range("A4").Select dataReadArray(3) = sourceSheet.Range("A4").Value sourceSheet.Range("A5").Select dataReadArray(4) = sourceSheet.Range("A5").Value
Étape 6
Ajoutez les données du tableau String à une nouvelle diapositive de votre présentation actuelle :
newSlide.Shapes(1).TextFrame.TextRange = "Données copiées depuis Excel" newSlide.Shapes(2).TextFrame.TextRange = dataReadArray(0) & vbNewLine & _ dataReadArray(1) & vbNewLine & _ dataReadArray(2) & vbNewLine & _ dataReadArray(3) & vbNewLine & _ dataReadArray(4) & vbNewLine
Étape 7
Fermez le classeur :
sourceLivre.Fermer
Basculez vers la fenêtre PowerPoint et cliquez sur "Macros". Cliquez sur "Exécuter" pour exécuter la macro "copyFromExcel" et ajoutez une nouvelle diapositive avec les données copiées à partir du fichier Excel que vous avez créé à l'étape 1.