Envoie de donnée depuis Excel vers Powerpoint

Bonjour à tous

Voilà j'ai besoin de pouvoir extraire des informations de Excel et de les importer dans PowerPoint pour faire une mise en forme. L'idée est de prendre les informations qui m'interessent à partir d'un tableau excel (colonne "Groupe" et "Mobilier") puis de créer une Shape à chaque texte transférer dans PowerPoint.

14essai.xlsm (31.29 Ko)

Donc déjà le fichier Excel avec une macro qui est censé envoyé chaque texte dans Powerpoint

Je ne comprends pas, mon code fonctionnait, puis j'ai du supprimer par erreur quelque chose et ça ne fonctionne plus....

Pouvez vous dejà m'éclairer et me dire ce qui cloche dans mon code.

Ensuite une fois que les shapes sont crées dans un fichier Powerpoint, je dois les ranger.

Beaucoup de problèmes à ce niveau !!!

10zzzz.pptm (39.78 Ko)

D'abord, je ne suis pas familiariser avec le vba sur Pwp et je n'arrive même pas à créer un bouton pour lancer mes macros...

1° problème

donc ma question : ben on fait comment?

Ensuite, la macro mise_en_forme permet de réduire la police des shapes, de les alignés, de les séparer,...

Bref, ça au moins ça fonctionne

Puis je créer des flèches avec la macro fleche, mais le problèmes c'est leur manipulation.

J'aimerais pouvoir changer leurs couleurs, leurs dimensions,... mais déjà je n'arrive pas à les sélectionner autrement que une par une. Je pensais qu'en leur donnant à toute le même nom je pourrais toutes les manipuler ensemble, mais je n'y arrive pas.

Set fleche = ActivePresentation.Slides(1).Shapes.AddShape(msoShapeBentArrow, 20 + i * m, 20 + i * m, 100, 20)
fleche.Name = "fleche"
ActivePresentation.Slides(1).Shapes.Range(Array("fleche")).Select

Ce code ne me permet de manipuler qu'une seule shape à la fois, j'aurais cru pouvoir toute les selectionner d'un seul coup.

Auriez vous une idée?

Je ne comprends pas, mon code fonctionnait, puis j'ai du supprimer par erreur quelque chose et ça ne fonctionne plus....

Ah déjà j'ai oublié de définir ma variable ....

Dim txt As Object
For i = 2 To n 'créer une forme par mobilier
txt = Cells(i, 1).Value & " - " & Cells(i, 4).Value
txt.Copy
Pptpre.Slides(1).Shapes.Paste
Next i

Ou alors comme ça...

mais ça ne marche pas non plus.

Sub crea_fichier()

Dim appPpt As Object 'la variable qui contiendra l'application
Dim Pptpre As Object 'la variable qui contiendra la présentation
Dim sld As Object 'pour manipuler un objet diapositive
Dim n As Integer
Dim i As Integer
Dim txt As Object

n = Application.WorksheetFunction.CountA(Range("A1:A" & Range("A65536").End(xlUp).Row))

Set appPpt = CreateObject("Powerpoint.Application")
Set Pptpre = appPpt.Presentations.Add 'créer le fichier powerpoint et un slide
Set sld = Pptpre.Slides.Add _
(Index:=1, Layout:=ppLayoutBlank)

For i = 2 To n 'créer une forme par mobilier
    With Pptpre.Slides(1)
    Set txt = Cells(i, 1).Value & " - " & Cells(i, 4).Value
    txt.Copy
    Pptpre.Slides(1).Shapes.Paste
    End With
Next i
Rechercher des sujets similaires à "envoie donnee powerpoint"