Exécution d’une présentation PowerPoint à partir d’Excel, VBA

L’exécution d’une présentation PowerPoint à partir d’Excel fournit un effet dynamique à votre projet Excel. Contrairement à Word, Outlook ou Access, il ne suffit pas d’ouvrir un fichier de présentation dans PowerPoint si vous souhaitez afficher le contenu de ce fichier. Vous pouvez parcourir les diapositives avec l’instruction Slidehowsettings.Run. Notez la structure With qui illustre une méthode de définition de la durée (trois secondes de la propriété advancetime dans cet exemple) pendant laquelle chaque diapositive est affichée, sans affecter les paramètres de transition de diapositive PowerPoint locaux de l’utilisateur:

Sub PowerPointSlideshow()
'Déclarez des variables d'objet pour l'application

'PowerPoint et pour le fichier de présentation PowerPoint.
Dim powerpApp As Object, powerpPres As Object
'Déclarez des variables de chaîne pour le chemin

'du dossier et le nom du fichier.
Dim strFilePath As String, strFileName As String
'Définissez les variables String avec le chemin et le nom du répertoire.
strFilePath = "C:\mesfichiers\"
strFileName = "PowerPointExemple1.pptx"
'Vérifiez si le chemin et le nom de fichier existent vraiment.
'Sinon, quittez la macro et informez l'utilisateur.
If Dir(strFilePath & strFileName) = "" Then
MsgBox _
"The Fichier PowerPoint " & strFileName & vbCrLf & _
"n'existe pas dans le chemin du dossier" & vbCrLf & _
strFilePath & ".", _
vbInformation, "Pas un tel animal."
Exit Sub
End If
'Ouvrez PowerPoint.
Set powerpApp = CreateObject("PowerPoint.Application")
'Rendez l'application PowerPoint visible.
powerpApp.Visible = msoTrue
'Ouvrez la présentation PowerPoint que vous souhaitez exécuter.
Set powerpPres = powerpApp.Presentations.Open(strFilePath & strFileName)
'Déterminez la durée d'affichage de chaque diapositive,

'qui dans cet exemple est de 3 secondes.
With powerpPres.slides.Range.slideshowtransition
.advanceontime = True
.advancetime = 3
End With
'Exécutez la présentation PowerPoint.
powerpPres.slideshowsettings.Run
'Lorsque la présentation est terminée, demandez à VBA de la

'considérer comme enregistrée afin que vous ne soyez

'pas invité à enregistrer la présentation lorsque vous la fermez.
powerpPres.Saved = True
'Quitter Powerpoint (facultatif)
powerpApp.Quit
'Libérez la mémoire extraite des variables Object.
Set powerpPres = Nothing
Set powerpApp = Nothing
End Sub

 

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x