XL 2010 Bibliothèque non inscrite

cp4

XLDnaute Barbatruc
Bonjour,

Suite à une discussion mes recherches m'ont amené ICI
J'ai téléchargé le fichier zip. Il s'agit d'exporter des feuilles d'excel vers powerpoint.
Cependant, en exécutant le code un message d'erreur
1633531167894.png

Arrêt sur cette ligne de code
1633531474054.png

Alors que j'ai bien coché dans la référence Microsoft Powerpoint Object Library
1633532178739.png

Je suis sous windows7 64bits et Office2010 32bits. Auriez-vous une idée comment résoudre ce problème.
En vous remerciant par avance.
 
Dernière édition:

cp4

XLDnaute Barbatruc
bonjour @cp4
essaie toujours en early binding avant de faire du late
Bonjour Patrick;),

Merci beaucoup pour ta suggestion. Cependant, Je suis autodidacte et progresse à mon rythme (very low).
Pourrais-tu m'éclairer? Avec mes remerciements.
Ci-dessous code du fichier:
VB:
Option Explicit

Sub Export_Ppt()
'necessite d'activer la reference Microsoft Powerpoint Object Library
    Dim PPT As PowerPoint.Application
    Dim PptDoc As PowerPoint.Presentation
    Dim NbShpe As Byte
    Set PPT = CreateObject("Powerpoint.Application")    'creation session PowerPoint
    PPT.Visible = True    'l'application sera visible
    Set PptDoc = PPT.Presentations.Open(ThisWorkbook.Path & "/Présentation1.ppt")    'ouverture fichier ppt
    Dim Feuille As Worksheet, I As Integer, J As Integer, NbreGraphiques As Integer
    I = 2
    For Each Feuille In ThisWorkbook.Worksheets
        NbreGraphiques = Feuille.Shapes.Count
        For J = 1 To NbreGraphiques
            If Feuille.Shapes(J).Name <> "CommandButton1" Then
                PptDoc.Slides.Add I, ppLayoutBlank
                Feuille.Shapes(J).Copy
                PptDoc.Slides(I).Shapes.Paste
                I = I + 1
            End If
        Next J
    Next
    PptDoc.Save    'sauvegarder les modifications
    PptDoc.Close    'fermer le document ppt
    PPT.Quit    'fermer l'application powerPoint
End Sub
 

patricktoulon

XLDnaute Barbatruc
re
VB:
Option Explicit

Sub Export_Ppt()
'necessite d'activer la reference Microsoft Powerpoint Object Library
    Dim PPT As new  PowerPoint.Application' on créée l'object en le dimant avec la librairie existante sur le PC
    Dim PptDoc As PowerPoint.Presentation
    Dim NbShpe As Byte
    'supprimé la création tardive de l'object 'PPT = CreateObject("Powerpoint.Application")    'creation session PowerPoint
'blablabla
'......
 

cp4

XLDnaute Barbatruc
re
VB:
Option Explicit

Sub Export_Ppt()
'necessite d'activer la reference Microsoft Powerpoint Object Library
    Dim PPT As new  PowerPoint.Application' on créée l'object en le dimant avec la librairie existante sur le PC
    Dim PptDoc As PowerPoint.Presentation
    Dim NbShpe As Byte
    'supprimé la création tardive de l'object 'PPT = CreateObject("Powerpoint.Application")    'creation session PowerPoint
'blablabla
'......
Merci mais plante toujours mais des lignes de code plus bas.
 

patricktoulon

XLDnaute Barbatruc
bon ben déjà si ça ne plante plus a la création de l'object c'est déjà pas mal
chez moi le fichier avec les graph fonctionne très bien
ça les ajoutes bien dans le ppt
VB:
Option Explicit

Sub Export_Ppt()
'necessite d'activer la reference Microsoft Powerpoint Object Library
Dim PPT As New PowerPoint.Application
Dim PptDoc As PowerPoint.Presentation
Dim NbShpe As Byte
'Set PPT = CreateObject("Powerpoint.Application") 'creation session PowerPoint
PPT.Visible = True 'l'application sera visible
Set PptDoc = PPT.Presentations.Open(ThisWorkbook.Path & "/Présentation1.ppt") 'ouverture fichier ppt
Dim Feuille As Worksheet, I As Integer, J As Integer, NbreGraphiques As Integer
I = 2
For Each Feuille In ThisWorkbook.Worksheets
NbreGraphiques = Feuille.Shapes.Count
For J = 1 To NbreGraphiques
If Feuille.Shapes(J).Name <> "CommandButton1" Then
PptDoc.Slides.Add I, ppLayoutBlank
Feuille.Shapes(J).Copy
PptDoc.Slides(I).Shapes.Paste
I = I + 1
End If
Next J
Next
PptDoc.Save 'sauvegarder les modifications
PptDoc.Close 'fermer le document ppt
PPT.Quit 'fermer l'application powerPoint
End Sub
Code:
 

cp4

XLDnaute Barbatruc
bon ben déjà si ça ne plante plus a la création de l'object c'est déjà pas mal
chez moi le fichier avec les graph fonctionne très bien
ça les ajoutes bien dans le ppt
VB:
Option Explicit

Sub Export_Ppt()
'necessite d'activer la reference Microsoft Powerpoint Object Library
Dim PPT As New PowerPoint.Application
Dim PptDoc As PowerPoint.Presentation
Dim NbShpe As Byte
'Set PPT = CreateObject("Powerpoint.Application") 'creation session PowerPoint
PPT.Visible = True 'l'application sera visible
Set PptDoc = PPT.Presentations.Open(ThisWorkbook.Path & "/Présentation1.ppt") 'ouverture fichier ppt
Dim Feuille As Worksheet, I As Integer, J As Integer, NbreGraphiques As Integer
I = 2
For Each Feuille In ThisWorkbook.Worksheets
NbreGraphiques = Feuille.Shapes.Count
For J = 1 To NbreGraphiques
If Feuille.Shapes(J).Name <> "CommandButton1" Then
PptDoc.Slides.Add I, ppLayoutBlank
Feuille.Shapes(J).Copy
PptDoc.Slides(I).Shapes.Paste
I = I + 1
End If
Next J
Next
PptDoc.Save 'sauvegarder les modifications
PptDoc.Close 'fermer le document ppt
PPT.Quit 'fermer l'application powerPoint
End Sub
Code:
Merci beaucoup. Mais plante chez moi.
Bibliothèques.gif
 

cp4

XLDnaute Barbatruc
J'ai trouvé. Il fallait déclarer Dim PptDoc As Object, PPT As Object
VB:
Option Explicit

Sub Export_Ppt()
'necessite d'activer la reference Microsoft Powerpoint Object Library
    Dim PptDoc As Object, PPT As Object, NbShpe As Byte
    '''''''''''''''''''''''''''''''''''''''''''''''
    Set PPT = CreateObject("Powerpoint.Application")
    PPT.Visible = True    'l'application sera visible
    Set PptDoc = PPT.Presentations.Open(ThisWorkbook.Path & "/Présentation1.ppt")    'ouverture fichier ppt
    Dim Feuille As Worksheet, I As Integer, J As Integer, NbreGraphiques As Integer
    I = 2
    For Each Feuille In ThisWorkbook.Worksheets
        NbreGraphiques = Feuille.Shapes.Count
        For J = 1 To NbreGraphiques
            If Feuille.Shapes(J).Name <> "CommandButton1" Then
                PptDoc.Slides.Add I, ppLayoutBlank
                Feuille.Shapes(J).Copy
                PptDoc.Slides(I).Shapes.Paste
                I = I + 1
            End If
        Next J
    Next
    PptDoc.Save    'sauvegarder les modifications
    PptDoc.Close    'fermer le document ppt
    PPT.Quit    'fermer l'application powerPoint
End Sub
 

Statistiques des forums

Discussions
312 112
Messages
2 085 415
Membres
102 885
dernier inscrit
AISSOU