Fusionner un document Excel en PowerPoint

  • Initiateur de la discussion Initiateur de la discussion nico125
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

N

nico125

Guest
Bonjour,

Je suis en train de développer une macros qui permettrait de fusionner un document Excel en PPT et de mettre à jour ce dernier.

Pour l'instant, je peux fusionner les informations vers les diapositives; seulement si le lien se situe dans une zone de texte. Or, je recherche à le mettre dans un tableau.

Pourriez-vous indiquer la démarche a suite s'il vous plait? Le document est attaché en pièce jointe.

Serait-il aussi possible de trouver une moyen de mettre à jour les diapositives (Sans devoir utiliser la fusion) et en ajouter si je mets d'autres informations dans le document Excel?

Je vous remercie d’avance pour votre aide

Ps: Voici le code actuellement utilisé:



Sub PPT()

Dim shtnote As Worksheet
Dim strnom As String
Dim strnote As String
Dim lngRow As Long
Dim objPPT As Object
Dim objPres As Object
Dim objSld As Object
Dim objShp As Object

Set shtnote = Worksheets("sheet1")

Set objPPT = CreateObject("Powerpoint.Application")
objPPT.Visible = True
Set objPres = objPPT.presentations.Open(ThisWorkbook.Path & "\note.ppt")
objPres.SaveAs ThisWorkbook.Path & "\test.ppt"

lngRow = 2
Do While shtnote.Cells(lngRow, 1) <> ""

strnom = shtnote.Cells(lngRow, 1)
strnote = shtnote.Cells(lngRow, 2)

Set objSld = objPres.slides(1).Duplicate
For Each objShp In objSld.Shapes
If objShp.HasTextFrame Then
If objShp.TextFrame.HasText Then
objShp.TextFrame.TextRange.Replace "<nom>", strnom
objShp.TextFrame.TextRange.Replace "<note>", strnote

End If
End If
Next
lngRow = lngRow + 1
Loop
objPres.slides(1).Delete
objPres.Save
objPres.Close

End Sub
 

Pièces jointes

Re : Fusionner un document Excel en PowerPoint

Bonsoir,
J'avoue ne pas vraiment avoir tout compris, mais bon...
Code:
Sub PPT()
Dim objPPT As Object
Dim objPres As Presentation
Dim objSld As Object
Dim objShp As Object

With Sheets("sheet1")
    Tablo = Range("A2:B" & Range("A65000").End(xlUp).Row).Value
End With

Set objPPT = CreateObject("Powerpoint.Application")
objPPT.Visible = True

Set objPres = objPPT.Presentations.Open(ThisWorkbook.Path & "\note.ppt")
objPres.SaveAs ThisWorkbook.Path & "\test.ppt"
For i = 1 To UBound(Tablo)
    Set objSld = objPres.Slides(1).Duplicate
    For Each objShp In objSld.Shapes
        If objShp.HasTable Then
            With objShp.Table
                x = x + 1
                .Cell(2, 1).Shape.TextFrame.TextRange.Text = Tablo(x, 1)
                .Cell(2, 2).Shape.TextFrame.TextRange.Text = Tablo(x, 2)
            End With
        End If
    Next
Next
objPres.Slides(1).Delete
objPres.Save
objPres.Close
    
End Sub
A+
kjin
 
Re : Fusionner un document Excel en PowerPoint

Super!!! Merci beaucoup votre aide!!!

Je cherche ensuite a pouvoir mettre à jour les diapositives créée grâce a la fusion: Si je modifie une note ou ajoute une note et un étudiant dans la feuille Excel, le PPT se met à jour automatiquement (Comme un lien hypertexte). Je désire faire cela, car j'aimerai ajouter la photo de chaque l'élève sur chaque diapositive.

Sinon, serait-il possible de suivre le même procédé (Fusionner) si les photos sont placées dans le document Excel ou dans un dossier séparé?
 
Re : Fusionner un document Excel en PowerPoint

Bonjour, merci pour votre réponse. En fait, je souhaiterai fusionner, en même temps que les données Excel, les photos des élèves. Ces dernières pourraient se trouver, au plus simple, dans le même dossier de Windows ou dans le document Excel. Encore Merci, Nico125
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

A
Réponses
2
Affichages
3 K
A
S
Réponses
0
Affichages
1 K
Stateaid
S
A
Réponses
17
Affichages
4 K
Abdenour
A
B
Réponses
0
Affichages
1 K
BaptisteLH
B
B
  • Question Question
Réponses
0
Affichages
778
BaptisteLH
B
C
Réponses
1
Affichages
4 K
Conrad13
C
B
Réponses
0
Affichages
935
BoudinTozz
B
Retour