Macros PowerPoint : méthode pour automatiser l’utilisation quotidienne de PowerPoint

Depuis plusieurs décennies, PowerPoint est l’une des solutions les plus prisées pour créer des présentations numériques. Suivant les estimations, plus de 100 milliards de diapositives sont créées tous les ans à l’aide de ce logiciel de Microsoft pour accompagner par exemple de photos et de textes des exposés scolaires, des conférences publiques ou des présentations professionnelles. Si vous utilisez ce logiciel (dont disposent tous les utilisateurs de la suite Microsoft Office), quelques petites astuces vous permettront de simplifier grandement votre travail. Les modèles contenant déjà certains motifs ou options de formatage comme des polices, tailles ou couleurs de caractère, et pouvant donc être rapidement utilisés, sont notamment très appréciés.

Si vous voulez créer plus simplement des tâches et des actions qui se répètent souvent ou qui sont fréquemment effectuées, il est pertinent d’utiliser des macros PowerPoint. Celles-ci vous permettent d’enregistrer des séquences et des combinaisons de touches et de clics de souris dans le logiciel de présentation et de les mettre à disposition pour un accès rapide. Nous vous expliquons comment créer ce type de macro PowerPoint et l’intégrer dans des projets.

Qu’est-ce qu’une macro PowerPoint ?

Les programmes de la suite Microsoft Office offrent en principe la possibilité de créer (ou de mettre en œuvre) et d’exécuter des macros. Vous pouvez donc non seulement créer des macros dans PowerPoint, mais également dans Word, Excel ou Access. Sortes de sous-programmes de l’application concernée, les macros de ce type ont toujours le même but : décrire une séquence d’actions et de commandes utilisateur traitée automatiquement à l’ouverture dans l’ordre prédéfini. Il peut s’agir ici aussi bien de frappes (touches individuelles ou combinaisons de touches) que de clics de souris.

Grâce à la macro dans PowerPoint, vous n’avez plus besoin d’effectuer toutes les étapes qui y sont enregistrées, ce qui présente un avantage indéniable si elles se répètent fréquemment à l’échelle d’un ou de plusieurs projets.

Comment fonctionne une macro PowerPoint ?

Afin de s’acquitter de leur fonction, les macros décrivent sous forme de code les instructions enregistrées. Ce code est traité automatiquement par PowerPoint au démarrage de la macro, de sorte que la séquence de commandes correspondante est réalisée. Toutes les macros dans PowerPoint et d’autres programmes de Microsoft Office ont ici recours à un langage de programmation qui leur est propre : le VBA (Visual Basic for Applications). Microsoft a créé ce langage macro universel en le dérivant du langage BASIC qu’elle a elle-même développé, et l’a introduit au milieu des années 1990 pour ses outils Office. La première condition pour créer ses propres macros PowerPoint est de maîtriser le langage de script. Avec l’éditeur Visual Basic, les outils Office ont pratiquement intégré à cet effet leur propre environnement de développement.

Pour le démarrage ou l’exécution d’une macro, vous avez trois options différentes :

  • Démarrer la macro PowerPoint en sélectionnant le menu Macros.
  • Démarrer la macro PowerPoint en sélectionnant un bouton dans le menu d’accès rapide.
  • Démarrer la macro PowerPoint en sélectionnant un bouton dans la bande de menu (ruban) d’un onglet quelconque.
Note

D’autres programmes de la suite Microsoft Office comme Word ou Excel permettent d’accéder à un enregistreur de macros vous permettant d’enregistrer des séquences de commandes. Le code VBA sous-jacent est généré automatiquement, de sorte qu’il est inutile de connaître le langage de script pour créer de nouvelles macros. Dans PowerPoint, cette fonction d’enregistrement n’est néanmoins plus disponible depuis la version de 2010.

Macros PowerPoint : méthode pour créer et ouvrir des macros dans PowerPoint

Si vous voulez créer des macros avec les éditions PowerPoint actuelles, vous devrez impérativement maîtriser Visual Basic for Applications. Avant de lire dans les instructions pas-à-pas suivantes la façon de créer des automatismes propres avec l’éditeur intégré, vous devriez commencer par vous intéresser pleinement à la syntaxe et aux possibilités de ce langage de programmation. Le tutoriel suivant sur VBA constitue ici une bonne base.

Étape 1 : ouvrir l’éditeur Visual Basic

En principe, vous pouvez choisir n’importe quel éditeur de code pour écrire le code VBA d’une macro PowerPoint. Néanmoins, nous vous recommandons d’utiliser l’éditeur Visual Basic directement intégré dans l’outil de présentation, car c’est une solution simple et confortable pour intégrer des macros. Étant donné que l’éditeur fait partie des « Développeurs » désactivés par défaut de la suite Microsoft Office, vous devez commencer par l’activer. Cliquez pour ce faire sur l’onglet « Fichier » afin d’y ouvrir les options relatives au bouton du même nom. Dans les options PowerPoint, ouvrez ensuite le menu « Personnaliser le ruban » et personnalisez à votre guise la barre de menu supérieure du logiciel de présentation.

Dans la fenêtre de menu droite, sélectionnez « Onglets principaux », cochez la case « Développeur » et cliquez sur « OK » pour ajouter l’onglet correspondant à votre installation PowerPoint :

Dans le ruban, vous devriez également trouver l’onglet « Développeur ». Si vous cliquez dessus, vous pouvez ouvrir à tout moment l’éditeur VBA par le bouton « Visual Basic » intégré dans la barre.

Étape 2 : créer une première macro PowerPoint

Le moyen le plus simple de créer une nouvelle macro PowerPoint avec l’éditeur VBA est de sélectionner le bouton « Macros » se trouvant juste à côté du bouton Visual Basic. Cliquez sur ce bouton pour faire apparaître un menu dans lequel est entré le nom souhaité pour la macro. Sélectionnez ensuite sous « Macro dans » le document PowerPoint dans lequel la chaîne de commandes créée devra être disponible. Si vous optez ici pour le point « Toutes les présentations ouvertes », la macro peut être utilisée pour tous les projets. Cliquez ensuite sur le bouton « Créer » pour créer une macro PowerPoint :

PowerPoint démarre ensuite automatiquement l’éditeur Visual Basic, y compris la fenêtre de code standard. Vous y voyez également déjà la première et la dernière ligne du code VBA de votre macro qui ont été générées automatiquement. Étant donné que nous avons sélectionné à l’étape précédente le nom « Test » pour notre macro, ces deux lignes ressembleront à cela dans notre cas :

Sub Test()
End Sub

Veuillez insérer le code VBA correspondant entre les deux instructions pour le début et la fin de la macro PowerPoint.

Étape 3 : enregistrer la macro PowerPoint créée

Pour intégrer définitivement la macro créée à votre installation PowerPoint, vous pouvez choisir de l’enregistrer dans le dossier actuellement ouvert ou dans un dossier créé spécialement à cet effet. Appuyez pour cela sur le symbole Enregistrer dans la barre de menu de l’éditeur VBA ou utilisez en variante la combinaison de touches [Ctrl] + [S] (enfoncées simultanément).

PowerPoint réagit par une boîte de dialogue dans laquelle l’application indique que vous ne pouvez enregistrer des macros que dans des documents du type « Modèle PowerPoint avec macro » ou « Présentation PowerPoint avec macro ». Cliquez ainsi sur « Non » pour modifier le type de fichier de votre document actuel ou pour indiquer le lieu d’enregistrement d’un modèle correspondant :

Sélectionnez à présent sous « Type de fichier » le point « Présentation PowerPoint prenant en charge les macros » ou « Modèle de conception PowerPoint prenant en charge les macros », ou en variante l’emplacement où votre modèle de macro PowerPoint central est enregistré (dans la mesure où vous l’aviez créé au préalable), avant de cliquer dans une dernière étape sur « Enregistrer » :

Étape 4 : exécuter la macro PowerPoint créée par le menu Macros

Dès que vous avez enregistré la macro dans une présentation ou un modèle PowerPoint donné, vous pouvez l’exécuter à tout moment. Le moyen le plus simple dans ce cas est de passer ici aussi par le menu Macros dans le ruban de l’onglet « Développeur » : sélectionnez à cet effet l’onglet correspondant et cliquez sur le bouton « Macros » comme pour la création de la macro :

Dans la fenêtre, vous devriez à présent voir la macro enregistrée et créée auparavant et pouvoir la sélectionner d’un clic gauche. Pour commencer la séquence de commandes, appuyez simplement sur le bouton « Exécuter », à la suite de quoi le menu est à nouveau fermé et le code macro exécuté.

Méthode pour lier des macros dans PowerPoint à un bouton ou une combinaison de touches

Les macros doivent effectuer le plus simplement possible les méthodes et procédés de travail dans PowerPoint ; un démarrage simple et rapide est donc impératif. Or, cette exigence ne sera pas pleinement satisfaite s’il faut commencer par lancer une macro disponible en passant par le menu Macros, comme indiqué précédemment. C’est la raison pour laquelle l’application Microsoft propose deux solutions alternatives permettant d’exécuter des macros PowerPoint en une seule étape grâce au démarrage de macro par bouton dans la barre d’accès rapide ou le ruban d’un onglet quelconque.

Ajouter un bouton macro à la barre d’outils pour l’accès rapide

Vous pouvez ajouter un bouton pour le démarrage rapide d’une macro PowerPoint soit à la barre d’outils pour l’accès rapide, soit au ruban d’un onglet quelconque. La barre d’outils comprend déjà en série quelques boutons pour exécuter rapidement certaines étapes du programme, par exemple pour enregistrer le document actuel. Si vous voulez ajouter un bouton pour votre macro à cette barre, commencez par ouvrir les options (par l’onglet « Fichier »). Passez ensuite à la rubrique « Barre d’outils Accès rapide » :

Sélectionnez sous « Choisir les commandes » (fenêtre gauche) l’entrée « Macros » et cliquez ensuite sur la macro créée par un clic gauche ou droit. Si vous appuyez ensuite sur le bouton Ajouter, PowerPoint répertorie alors également la macro dans la fenêtre de menu droite :

Si vous appuyez sur l’entrée de la macro dans la fenêtre de menu droite et que vous sélectionnez ensuite « Modifier », vous avez alors la possibilité de personnaliser le nom et l’icône du bouton. Pour terminer, confirmez le nouveau bouton de la barre d’outils Accès rapide avec « OK ».

Ajouter le bouton Macro au ruban d’un onglet

L’ajout d’un bouton Macro au ruban d’un onglet donné fonctionne en principe de la même manière que l’ajout à la barre d’outils Accès rapide. Il faut néanmoins une étape supplémentaire : contrairement à la barre pour le démarrage rapide, le bouton ne peut être intégré qu’après la création préalable d’un groupe défini par l’utilisateur.

Dans ce cas, commencez par ouvrir les options PowerPoint (« Fichier » « Options »). Naviguez ensuite dans la rubrique « Personnaliser le ruban » et double-cliquez dans la fenêtre de menu droite sur l’onglet dans lequel vous souhaitez intégrer le bouton Macros. Appuyez ensuite sur « Nouveau groupe » pour ajouter à cet onglet le groupe mentionné défini par l’utilisateur :

Cliquez sur « Renommer » pour entrer encore un nom pertinent pour le nouveau groupe créé avant de sélectionner le point « Macros » dans la fenêtre de menu gauche sous « Choisir les commandes ». Cliquez sur la macro devant recevoir un bouton Ruban et classez-la dans le groupe avec « Ajouter » :

Comme avec le bouton Macro pour la barre d’outils Accès rapide, vous pouvez enfin attribuer une icône individuelle à votre macro PowerPoint en la sélectionnant dans la fenêtre de menu droite et en cliquant sur « Renommer ». Si vous fermez à présent les options en cliquant sur « OK », vous trouverez le nouveau bouton dans le groupe de ruban créé de l’onglet sélectionné :

Macros PowerPoint : exemples pour codes VBA utiles

Visual Basic for Applications vous permet de programmer un grand nombre de macros différentes dans PowerPoint. Il peut s’agir ici d’une part de séquences de commande exécutables qui vous aident très concrètement dans votre travail quotidien avec le logiciel de présentation. D’un autre côté, des fonctions simples dont vous n’avez pas impérativement besoin pour la réalisation de vos présentations peuvent également ainsi être intégrées dans le programme. La macro PowerPoint suivante a par exemple un caractère purement informatif :

Sub Test()
Dim strText As String
strText = "Système d’exploitation: " & _
Application.OperatingSystem _
& Chr(10)
strText = strText & "Répertoire: " _
& Application.Path & Chr(10)
strText = strText & "Nom d‘application: " _
& Application.Name & Chr(10)
strText = strText & "Version: " & _
Application.Version
MsgBox strText, vbInformation, _
"Program info !"
End Sub

Si PowerPoint exécute ce code VBA, plusieurs informations sont ouvertes simultanément : à côté du nom du système d’exploitation sur lequel vous exécutez actuellement PowerPoint, par exemple des informations sur le répertoire dans lequel l’application est enregistrée ainsi que sur le nom et le numéro de version de l’installation PowerPoint. L’application Microsoft présente ensuite les résultats du contrôle dans une boîte de messages dénommée « Program info ! » :

Nous vous présentons ici un autre exemple de macro PowerPoint vous simplifiant concrètement le travail avec le programme de Microsoft. Le grand code VBA suivant ajoute au logiciel de présentation une macro créant automatiquement une table des matières pour les diapositives sélectionnées, au choix avec ou sans hyperliens :

Option Explicit
Sub Agenda(Optional Hyperlinks As Boolean)
Dim i As Integer
Dim o As Integer
Dim strSel As String
Dim strTitel As String
Dim strAgendaTitel As String
Dim slAgenda As Slide
Dim intPos As Integer
Dim SéquenceDiapositive () As Integer
On Error Resume Next
If ActiveWindow.Selection.SlideRange.Count > 0 Then
ReDim SéquenceDiapositive(1 To ActiveWindow.Selection.SlideRange.Count)
'Sélectionner la position du contenu de la diapositive
intPos = InputBox("AVANT quelle diapositive l’agenda doit-il être inséré", "Position de l’agenda")
'Annuler si la valeur est supérieure au nombre de diapositives
If intPos > ActivePresentation.Slides.Count Then
MsgBox "La valeur sélectionnée est supérieure au nombre de diapositives dans la présentation."
Exit Sub
End If
'Entrer le titre du contenu de la diapositive
strAgendaTitel = InputBox("Quel titre donner au contenu de la diapositive ?", "Entrer titre")
'Déterminer l’ID des diapositives sélectionnées 
For i = 1 To ActiveWindow.Selection.SlideRange.Count
SéquenceDiapositive(i) = ActiveWindow.Selection.SlideRange(i).SlideIndex
Next
For o = 1 To UBound(SéquenceDiapositive)
If ActivePresentation.Slides(SéquenceDiapositive(o)).Shapes.HasTitle Then
'Build up the ToC Text
strTitel = ActivePresentation.Slides(SéquenceDiapositive(o)).Shapes.Title.TextFrame.TextRange.Text
strSel = strSel & strTitel & vbCrLf
End If
Next
' Insérer la diapositive vide à la position désirée, entrer le titre et en-têtes
Set slAgenda = ActivePresentation.Slides.Add(intPos, ppLayoutText)
slAgenda.Shapes(1).TextFrame.TextRange = strAgendaTitel
slAgenda.Shapes(2).TextFrame.TextRange = strSel
'Insérer des hyperliens
If Hyperlinks Then
For o = 1 To UBound(SéquenceDiapositive)
If ActivePresentation.Slides(SéquenceDiapositive(o) + 1).Shapes.HasTitle Then
'Build up the ToC Text
strTitel = ActivePresentation.Slides(SéquenceDiapositive(o) + 1).Shapes.Title.TextFrame.TextRange.Text
With slAgenda.Shapes(2).TextFrame.TextRange.Paragraphs(o).ActionSettings(ppMouseClick)
.Action = ppActionHyperlink
.Hyperlink.Address = ""
.Hyperlink.SubAddress = ActivePresentation.Slides(SéquenceDiapositive(o) + 1).SlideID & "," & ActivePresentation.Slides(SéquenceDiapositive(o) + 1).SlideIndex & "," + strTitel
End With
End If
Next
End If
End If
End Sub
Sub RépertoireSansHyperlien()
'Insérer un répertoire sans hyperlien
Agenda (False)
End Sub
Sub RépertoireAvecHyperlien ()
'Insérer un répertoire avec hyperlien
Agenda (True)
End Sub

Pour exploiter les possibilités de cette macro enregistrée dans les deux variantes « RépertoireSansHyperlien » et « RépertoireAvecHyperlien » dans l’installation PowerPoint, seules les diapositives devant être énumérées dans le répertoire sont sélectionnées. Il faut ici que toutes les diapositives souhaitées soient sélectionnées au démarrage de la macro PowerPoint. Maintenez à cet effet la touche [Ctrl] enfoncée et faites successivement un clic gauche sur chacune des diapositives concernées. L’ordre que vous respectez ici est décisif pour la table des matières : la macro présente en effet les différentes entrées du répertoire dans l’ordre strictement inverse à votre sélection précédente.

Après le démarrage de la macro, il faut ensuite commencer par répondre à deux questions :

  1. AVANT quelle diapositive l’agenda doit-il être inséré ?
  2. Quel titre la diapositive de la table des matières doit-elle avoir ?

Si les deux entrées ont été faites et confirmées par un clic sur « OK », la macro PowerPoint crée une diapositive avec une table des matières à l’emplacement souhaité, s’il est sélectionné, y compris des hyperliens vers les différentes diapositives :

Veuillez prendre connaissance des mentions légales en vigueur sur cet article.