Probleme application power point dans excel

Résolu
cs_steph3147 Messages postés 6 Date d'inscription lundi 5 mai 2008 Statut Membre Dernière intervention 15 mai 2008 - 14 mai 2008 à 13:46
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 - 15 févr. 2009 à 19:07
Bonjour,
J'essaie de faire quelques opérations dans power point à partir de données collectées dans excel.
Cependant lorsque j'exécute la macro depuis excel ca plante des la première ligne (engras).
Quelqu'un peut-il me donner quelques conseils
Merci par avance

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:="C:\Documents and Settings\acosta_s\Desktop\CLAC\LSD\test.ppt")
' On déclare une variable de type Application PowerPoint


' On active, sélectionne et copie le Graphique Graphique 1 de Excel :
ActiveSheet.ChartObjects("Graphique 1").Activate
ActiveChart.ChartArea.Select
ActiveChart.ChartArea.Copy
' Et on le colle dans la première diapositive de la présentation :
Pres.Slides(1).Shapes.Paste
' On enregistre la présentation PowerPoint :
Pres.Save
' Et on quitte PowerPoint proprement :
ppt.Quit
Set ppt = Nothing
A voir également:

10 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
14 mai 2008 à 16:47
ssalut,

il faut cocher dans les références de VBA (menu Outils) Microsoft PowerPoint Object Library

puis modifie 2 choses dans ton code :

Dim ppt As New PowerPoint.Application ' Ajoute New

'
PLus besoin de la ligne suivante, grâce a NEW (pour ton ppt), une souvelle
instance _
se crée
automatiquement

'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:="C:\Documents and
Settings\acosta_s\Desktop\CLAC\LSD\test.ppt")
' On déclare une variable de type
Application PowerPoint

' On active,
sélectionne et copie le Graphique Graphique 1 de Excel :
ActiveSheet.ChartObjects("Graphique
1").Activate
ActiveChart.ChartArea.Select
ActiveChart.ChartArea.Copy
' Et on
le colle dans la première diapositive de la présentation :
Pres.Slides(1).Shapes.Paste
' On enregistre la
présentation PowerPoint :
Pres.Save
' Et on quitte PowerPoint
proprement :
ppt.Quit
Set ppt = Nothing

~
<small>[code.aspx?ID=39466 Mortalino] ~
Colorisation automatique</small>

@++

le mystérieux chevalier,"Provençal, le gaulois"
3
cs_steph3147 Messages postés 6 Date d'inscription lundi 5 mai 2008 Statut Membre Dernière intervention 15 mai 2008
15 mai 2008 à 08:10
Merci pour cette reponse qui m'aide.
En effet il fallait activer la bibliotheque powerpoint
Bonne journée
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
15 mai 2008 à 11:39
Si la réponse de Mortalino a solutionné ton problème, pense à cliquer le bouton vert "Réponse acceptée" sur son message. Ça aide les gens à trouver des solutions plus rapidement et ça évite à d'autres de s'y arrêter pour répondre...

Bonne journée !

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 137
14 févr. 2009 à 10:33
Le Pivert
Bonjour Mortalino
J'ai envoyé mon dernier programme:
http://www.vbfrance.com/codes/DIAPORAMA-POWERPOINT-DEPUIS-EXCEL_49191.aspx à un ami, mais il ne peut pas importer la Library car dans Outils: Références est grisé ( inactive), je ne sais pas comment le dépanner.
Merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
14 févr. 2009 à 12:23
Salut LePivert,

Peut-être pourrais-tu essayer sans créer de référence ?

Avec une référence, on doit
déclarer une variable As New PowerPoint.Application

Sans référence, on doit
déclarer une variable As Object
et utiliser CreateObject("PowerPoint.Application")

Un des problèmes avec le code de steph3147 était qu'il mélangeait les 2 techniques. Il n'avait pas de référence et déclarait une variable As Powerpoint.Application et il utilisait CreateObject() tout de même...

Dans ton cas, je ne sais pas si ça pourrait régler le problème (?) Peut-être que ton ami n'a pas PowerPoint installé sur sa machine ?

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 137
14 févr. 2009 à 13:56
Le Pivert
Merci MPi, mais cela doit provenir du PC de mon ami car j'ai eu un commentaire sur mon programme qui m'indiquait qu'il fonctionnait très bien sur Excel 2007
@+ Le Pivert
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
14 févr. 2009 à 14:05
Le problème avec les références, c'est qu'elles ne sont pas compatibles d'une version à une autre. Si tu crées ton programme sous 2000, tu devras recréer la référence sous 2003 ou autres. Mais ça, je pense que tu le savais déjà...

Peut-être que le niveau de sécurité d'Excel chez ton ami est trop élevé. Demande-lui de voir dans Outils / Macros / Sécurité

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 137
14 févr. 2009 à 14:18
Le problème est qu'il ne peut pas accéder aux références, elles sont grisées (inactives)
Le Pivert
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
14 févr. 2009 à 15:13
Regarde tout de même le niveau de sécurité et qu'il le baisse si nécessaire.
Dis-moi si ça règle ou non le problème de "grisage".

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
0
cs_Le Pivert Messages postés 7904 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 14 août 2024 137
15 févr. 2009 à 19:07
Merci MPi,
 le problème est résolu cela venait du package Office qu'il a réinstallé. Il ne reconnaissait pas la bibliothèque. Avant je lui avais envoyé d'autres programmes qui ne nécessitaient pas de bibliothèque et ils fonctionnaient très bien.
@+
Le Pivert
0
Rejoignez-nous