Powerpoint - Tri de diapo dans pps lancé

Neutrix3 Messages postés 1 Date d'inscription mardi 3 avril 2012 Statut Membre Dernière intervention 3 avril 2012 - 3 avril 2012 à 22:40
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 - 4 avril 2012 à 14:46
Bonjour,

Je créé un pps composé de plusieurs slides (1 belle photo par slide)
Parmis la vingtaine de slides, il faut dégager les 3 préférées.
Le probleme est de pouvoir comparer la slide 19 avec la 7 éventuellement (ce n'est pas évident).

Comment verriez-vous la chose ?

J'avais pensé à un système de click (on ne clique que si on pense que la photo vaut le coup) sur le slide n, qui serait copié (voir même coupé) en fin de diaporama pour ensuite passer à la diapo n+1 etc.
Au final, en fin de diaporama, on aurait à la suite, les slides 8, 12, 18, 19 (par exemple) en fin de diaporama. Ce qui est plus pratique pour décider du trio gagnant.

Si vous avez une autre solution, je suis à votre écoute !

Merci d'avance.

PS: Tout doit se passer en pps. pas en ppt.

2 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 137
4 avril 2012 à 14:34
Bonjour,
Je ne pense pas que l'on puisse faire cela avec un diapo lancé.
Pour lancer une macro à l'ouverture de PowerPoint il faut passer par les macros complémentaitres voir ceci:
http://powerpoint.developpez.com/faq/?page=V-G#macroouverture
ou alors par Excel. C'est cette solution que je te propose.
Tu crées une nouvelle présentation nommée: Présentation1
Tu fais Alt F11 pour accèder aux macros. Tu crées un UserForm dans lequel tu mets un bouton et tu mets ce code:

Private Sub CommandButton1_Click()
ActiveWindow.Selection.SlideRange.Delete
End Sub
Private Sub UserForm_Initialize()
CommandButton1.Caption =  "Supprimer"
End Sub

Important :Mettre la propriété de l'UserForm ShowModal à False
ensuite tu ajoutes un module dans lequel tu mets ce code:
Sub L_Start()
UserForm1.Show
 End Sub

Tu fermes en enregistrant en PPT.
Tu ouvres un classeur Excel et tu mets dans ThisWorBook ceci:

'http://powerpoint.developpez.com/faq/?page =V-G#macroouverture
'Ne pas oublier de cocher la référence à PowerPoint (dans l'éditeur VB Menu Outils/référence).
Public Sub LancerPPT()
    ' déclaration des variables
    Dim strFichierPPT As String     ' nom du fichier PowerPoint
    Dim appPPT As New PowerPoint.Application
 
    ' affectation
    strFichierPPT = "Chemin de la Présentation1.ppt"
 
    ' ouverture du fichier
    appPPT.WindowState = ppWindowMaximized
    appPPT.Visible = True
    appPPT.Presentations.Open strFichierPPT
 
    ' lancement de la macro
    appPPT.Run "Présentation1.ppt!L_Start"
 
End Sub
Private Sub Workbook_Open()
LancerPPT
End Sub

Tu fermes. A l'ouverture du classeur Excel, PowerPoint va s'ouvrir avec ton UserForm. Il te suffira d'ouvrir la présentation que tu veux traiter. A chaque Slide que tu voudras supprimer tu n'auras qu'à cliquer sur Supprimer.
@+Le Pivert
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 137
4 avril 2012 à 14:46
Si tu mets le classeur Excel et la Présentation dans le même dossier tu peux éviter de mettre le chemin en dur
Dans ThisWorkBook tu remplaces ceci:
' affectation
strFichierPPT = "Chemin de la Présentation1.ppt"
pae cela
 ' affectation
    strFichierPPT = ThisWorkbook.Path & "\Présentation1.ppt"
0
Rejoignez-nous