Bonjour,
Une fois par mois je dois copier des indicateurs et tableaux de bord d'une base de données Excel vers un Powerpoint (3 diapos)
Ces copier/coller comportent 1 graphique nommé "Graphique8" dans Excel puis des tableaux situés dans des zones de cellules mais toujours sur la meme feuille.
J'ai trouvé une macro bien sympa mais qui bloque à la ligne 14
et si je passe les lignes 13 à 16 en commentaires afin de sauter ces lignes, ensuite ça bug a la ligne 20
Quelqu'un a-t-il une idée du pourquoi ça bug au "COPIER"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 Sub RMD_M43() ' On déclare une variable de type Application PowerPoint Dim ppt As PowerPoint.Application Set ppt = CreateObject("PowerPoint.Application") ppt.Visible = True ' Indispensable, sinon il ne peut pas ouvrir de fichier (Erreur) ' On crée maintenant un objet Presentation Dim Pres As PowerPoint.Presentation ' Et on lui dit de quelle présentation il s'agit : Set Pres = ppt.Presentations.Open(Filename:="U:\Groupes fonctionnels\RMD M43.pptm") ' On active, sélectionne et copie le Graphique de Excel : Sheets("Accueil").Select ActiveSheet.Unprotect ActiveSheet.ChartObjects("Graphique 8").Activate ActiveChart.ChartArea.Copy 'Et on le colle dans la première diapositive de la présentation : Pres.Slides(1).Shapes.Paste ' Zone de la feuille Excel "data" à copier Sheets("Accueil").Range("A7:O39").Copy ' Coller les cellules Excel dans Powerpoint PptDoc.Slides(2).Shapes.PasteSpecial ppPasteOLEObject ' !!! A rajouter à la suite du précédent code VBA !!! PptDoc.Slides(2).Shapes(1).LockAspectRatio = msoFalse PptDoc.Slides(2).Shapes(1).Left = 10 PptDoc.Slides(2).Shapes(1).Top = 10 PptDoc.Slides(2).Shapes(1).Height = 340 PptDoc.Slides(2).Shapes(1).Width = 700 ' On enregistre la présentation PowerPoint : Pres.Save ' Et on quitte PowerPoint proprement : ppt.Quit Set ppt = Nothing End Sub
Nota : j'ai bien activé Microsoft Powerpoint dans la librairie.
Cordialement
Partager