Récuperer texte associé Powerpoint 2007 sans Ctrl+C, Ctrl+V

Répondre
Partager Rechercher
Bonsoir,

Voila je souhaiterais récupérer sur word le texte ( dans les cadres sous les slides ) d'un présentation powerpoint 2007 d'un centaine de diapo.

Je souhaite donc éviter d'avoir à copier-coller le texte diapo par diapo.

J'avais lu qu'on pouvait sauvergarder le fichier powerpoint en rtf puis ouvrir le rtf avec word ou wordpad et trouver le texte sans les images.

Il n'en est rien je n'ai pas le texte dans le rtf.

Quelqu'un a une astuce ?

Merci d'avance.
oui j ai une macro qui fait ca plus ou moins mais faut que tu attende lundi (elle au boulot)

bon teste ca

tu fait alt f11 dans powerpoint
menu insertion module tu cole ca et tu execute pour voir
Sub a()
Dim st1 As String

Set w = CreateObject("word.application")
w.Documents.Add DocumentType:=0
w.Visible = True
For i = 1 To ActivePresentation.Slides.Count
ActivePresentation.Slides(i).Select
For j = 1 To ActivePresentation.Slides(i).Shapes.Count
st1 = st1 & vbCrLf & ActivePresentation.Slides(i).Shapes(j).TextFrame.TextRange.Text
Next j
Next i

w.Selection.TypeText st1

End Sub
Merci de ta réponse,

Alors déjà alt+f11 sur powerpoint 2007 ca lance rien, aurais tu le chemin sans raccourci ??

Par contre j'ai testé sur une autre présentation en powerpoint 2003, alt F11 m'ouvre la bonne fenetre je colle ton programme dans insertion code, j'execute, ca m'ouvre un word mais avec rien dedans.

Petite precision quand je ferme le word ca me dit qu'il y a un bug à cette ligne :
st1 = st1 & vbCrLf & ActivePresentation.Slides(i).Shapes(j).TextFrame.TextRange.Text

Sinon si ca marche lundi c'est déjà pas mal si tu as la solution avant c'est encore mieux.

Merci encore.
enleve la ligne option explicit et copy bien de sub() a end sub () a pas d erreur

sous la version 2007 je sais pas ou il ont mit les macro cherche dans les menu

maintenant si c est vide ca depent du powerpoint il est peut etre special
Alors j'ai probablement pas tout pigé à ton dernier message, en tout cas en l'état ca ne marche pas.

Que ce soit avec le texte entier telle qu'il est écrit dans ton premier message ou le même avec la ligne qui a l'air bugé en moins, dans les deux cas ca m'ouvre un word vide.

Sinon pour option explicit je comprend pas bien ce que tu veux que fasse mais en tout cas dans option, la déclaration des variables aléatoire est décoché.

Voilà si tu as une idée, merci d'avance.
ca marche pas sur 2003,
c'est sur 2003 que j'essaie de faire marcher ta macro, sur un fichier original 2003 avec du texte, et sur mon fichier que j'ai sauveguardé sous format ppt et non pptx.

Cette macro que tu as fait de tête elle marche "chez toi" ?

Sinon j'ai peut être pas compris ton histoire d'enlever une ligne et de bidouiller option explicit.

Ce que je fais c'est le copier coller intégral du texte que nous mis dans ton premier reply et execute.

Si tu as une idée...
Ouep j'ai bien du texte.
On est bien d'accord que je fais alt+F11 et dans insertion / module je colle ca :

Sub a()
Dim st1 As String

Set w = CreateObject("word.application")
w.Documents.Add DocumentType:=0
w.Visible = True
For i = 1 To ActivePresentation.Slides.Count
ActivePresentation.Slides(i).Select
For j = 1 To ActivePresentation.Slides(i).Shapes.Count
st1 = st1 & vbCrLf & ActivePresentation.Slides(i).Shapes(j).TextFrame.TextRange.Text
Next j
Next i

w.Selection.TypeText st1

End Sub



puis je clique sur execute et ca m'ouvre un word (vide pour moi).

A la limite je peux t'envoyer un de mes Powerpoint pour voir si ca marche chez toi, mais j'ai déjà pas mal abusé de ton temps donc np ca marche pas je fais copier/coller dia par dia le texte
Ce qui semble curieux, c'est tu peux bel et bien enregistrer un document Powerpoint au format Rtf.

Sinon pourquoi ne pas essayer de passer par un format tiers, tel le pdf, en convertissant ton .ppt en .pdf, tu pourrais de nouveau le reconvertir en .doc, il y a moult softs qui proposent ça, avec des options et une réussite très inégale malheureusement.
voila t envoi le doc mais les images ne sont pas dans le doc
et les textes sont pas forcement dans l ordre de la diapo

Sub a()
Dim st1 As String
On Error Resume Next
Set w = CreateObject("word.application")
w.Documents.Add DocumentType:=0
w.Visible = True
For i = 1 To ActivePresentation.Slides.Count
ActivePresentation.Slides(i).Select
For j = 1 To ActivePresentation.Slides(i).Shapes.Count
st2 = ""
st2 = ActivePresentation.Slides(i).Shapes(j).TextFrame.TextRange.Text
While InStr(1, st2, vbCrLf)
st2 = Mid(st2, 1, InStr(1, st2, vbCrLf) - 1) & " " & Mid(st2, InStr(1, st2, vbCrLf) + 2)
Wend
st1 = st1 & vbCrLf & st2
Next j
Next i

w.Selection.TypeText st1

End Sub
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés