Incompatibilité entre VBA Excel 2013 et VBA Excel 2007
P
Bonjour,
j'ai réalisé une application sous VBA Excel 2013 de telle façon qu'elle prends des cellules et les copie dans une présentation PPT. l'application vas être exécuter sous excel 2007. et j'ai rencontré plusieurs anomalies dans l’exécution du code
le code ci-dessus marche à merveille sous excel 2013, mais je rencontre des anomalies sous excel 2007
les lignes qui représentent l'anomalies: "Set PptDoc = PptApp.Presentations.Open(Application.GetOpenFilename) "
ET ".Slides(5).Shapes.Paste"
Sub Generation_rapport_clic()
Dim dlig As Long
Dim PptApp As PowerPoint.Application
Dim PptDoc As PowerPoint.Presentation
Dim Diapo As PowerPoint.Slide
Dim Sh As PowerPoint.Shape
Dim Cs1 As ColorScheme
Dim NbShpe As Integer
Dim i, a As Integer
Dim p As Integer
a = 0
i = 1
p = 3
Set PptApp = CreateObject("Powerpoint.Application")
'PptApp.Visible = True
Set PptDoc = PptApp.Presentations.Open(Application.GetOpenFilename)
With PptDoc
'*****Slide 1*****
Set Sh = .Slides(1).Shapes.AddLabel(Orientation:=msoTextOrientationHorizontal, _
Left:=320, Top:=440, Width:=10, Height:=10)
Sh.TextFrame.TextRange.Text = Feuil1.TextBox1
Sh.TextFrame.TextRange.Font.Size = 20
Sh.TextFrame.TextRange.Font.Bold = msoTrue
Set Sh = .Slides(1).Shapes.AddLabel(Orientation:=msoTextOrientationHorizontal, _
Left:=130, Top:=57, Width:=10, Height:=10)
Sh.TextFrame.TextRange.Text = " Nom de société " & Feuil1.TextBox1
Sh.TextFrame.TextRange.Font.Size = 20
Sh.TextFrame.TextRange.Font.Bold = msoTrue
'*****************
'*****Slide 5*****
p = 17
While Not IsEmpty(Sheets("Paramétre").Cells(p, 3))
p = p + 1
Wend
p = p - 1
Feuil8.Range("C17:E" & p).Copy
.Slides(5).Shapes.Paste
With .Slides(5).Shapes(.Slides(5).Shapes.Count)
.Name = "monTableau" 'Renomme l'objet collé
.Left = -90 'position horizontale dans le slide
.Top = 75 'position verticale dans le slide
.Height = 250 'hauteur
.Width = 600 'largeur
End With
End Sub
Merci d'avance
t
Bonjour
sous Excel 2003 :
Dim PptApp As Object
Dim PptDoc As Variant
Dim sh As Shape
Dim diapo As Variant
Set PptApp = CreateObject("Powerpoint.Application")
PptApp.Activate
Set PptDoc = PptApp.Presentations.Open(Application.GetOpenFilename)
pour slide je ne sais pas
P
Bonjour,
Meerciiiii ça fonctionne