- 1 – Sur une nouvelle feuille de calcul, créez un tableau de données, (ici A1:D10) puis à partir de ce tableau créez le graphique de votre choix.
- 2 – Accédez ensuite à votre éditeur Visual Basic ALT + F11 ou Développeur / Visual Basic. Pour pouvoir manipuler les objets ou les collections d’objets de PowerPoint, nous devons nous assurer que la bibliothèque qui les contient est active dans votre éditeur Visual Basic. Passez la commande F2 ou Affichage / Explorateur d’objets et vérifier sa présence dans la liste des bibliothèques d’objets.
- 4 – Voici un premier exemple de code dans lequel nous démarrons l'application PowerPoint et dans laquelle nous ouvrons une nouvelle présentation pour le collage simple du graphique Excel
Sub Export_Powerpoint()
Dim appPpt As Object 'la variable qui contiendra l'application
Dim Pptpre As Object 'la variable qui contiendra la présentation
Dim nbshpe As Byte
Dim shpe As Object 'pour manipuler un objet Forme
Dim sld As Object 'pour manipuler un objet diapositive
'-----------------------------------------------
Set appPpt = CreateObject("Powerpoint.Application")
appPpt.Visible = True
'l'application est créée et rendu visible
'--------------------------------------------------------
Set Pptpre = appPpt.Presentations.Add
Set sld = Pptpre.Slides.Add _
(Index:=1, Layout:=ppLayoutBlank)
Set sld = Pptpre.Slides.Add _
(Index:=2, Layout:=ppLayoutBlank)
'la présentation est créée et on ajoute 2 diapositives vierges à l'intérieur
'---------------------------------------------------
ActiveSheet.ChartObjects(1).Select
ActiveChart.ChartArea.Copy
Pptpre.Slides(2).Shapes.Paste
nbshpe = Pptpre.Slides(2).Shapes.Count
With Pptpre.Slides(2).Shapes(nbshpe)
.Left = 0
.Top = 100
.Width = 400
.Height = 300
End With
'on procède au copier / coller et on récupéré le numéro de la dernière forme
'de la deuxième diapositive (elle contient le graphique), après on lui donne
'des paramètres de taille et de positionnement
'--------------------------------------------------------------------
Set shpe = Pptpre.Slides(1).Shapes. _
AddTextbox(msoTextOrientationHorizontal, _
250, 20, 500, 50)
With shpe.TextFrame.TextRange
.Text = "Passage d'un graphique Excel dans PowerPoint"
.Font.Name = "arial"
.Font.Size = 24
.Font.Bold = True
End With
'Ajout d'une zone de texte sur la diapositive 1 puis on attribue
'un texte dans cette zone avec paramètre de mise en forme
'--------------------------------------------------------------------
Pptpre.SaveAs ("c:\users\olivier-picot.fr\Documents\monfichierV2.pptx")
Set appPpt = Nothing
'sauvegarde de la présentation puis remise à 0 de la variable
'--------------------------------------------------------------------
End Sub
- 5 – Après exécution du code vous devriez avoir le document suivant dans PowerPoint.
La suite très prochainement...
5 commentaires:
SUPER comme tutoriel. J'ai enfin compris comment utiliser des données qui proviennent d'excel vers powerpoint.
MERCI
bonjour
je voudrais faire la même manip avec avec un tableau tout simplement a la place du graphique
que dois je modifier dans ce code ?
merci
Voila qui m'ouvre de nouvelles possibiltés.
Super, lisible et compréhensible pour le néophite que je suis (même à 57 ans!)
Je rajoute dans mes favori
jym42009
Bonjour;
Je viens de réaliser un programme similaire. Ma question c'est comment faire pour fixer la police des tableaux de façon qu'ils soient lisibles sur PowerPoint sans faire de manipulations manuelles.
Merci.
Excellent!
Merci de cette publication.
Comment exporter maintenant un tableau excel vers power point,
Enregistrer un commentaire