5.5Automatisation : macros VBA
Pour les tâches répétitives, Project est automatisable via VBA (Visual Basic for Applications), le même langage de macros qu'Excel ou Word. Le point d'entrée sans code : l'enregistreur de macros, qui capture une suite d'actions (mettre en forme un rapport, appliquer un filtre, générer une vue) et la rejoue à volonté. On obtient un code qu'on peut ensuite relire et modifier pour l'adapter. C'est le moyen le plus simple d'automatiser sans être développeur.
En allant plus loin, on écrit ou édite des macros dans l'éditeur VBA pour manipuler le modèle objet de Project (parcourir les tâches, modifier des champs en masse, produire un reporting sur mesure, exporter des données). Cas typiques : renuméroter des tâches, appliquer une mise en forme standard à tous ses projets, générer automatiquement un tableau récapitulatif. VBA offre une puissance quasi illimitée pour les gros besoins récurrents, au prix d'un apprentissage. Automatiser ses tâches répétitives dans Project, c'est le dernier palier : gagner du temps sur l'outil lui-même pour se concentrer sur le pilotage. C'est l'aboutissement du parcours expert.
Vocabulaire de la section
- VBA
- Visual Basic for Applications : langage de macros commun aux applications Office, permettant d'automatiser Project.
- Enregistreur de macros
- Outil capturant une suite d'actions pour la rejouer ; produit du code VBA sans avoir à l'écrire.
- Macro
- Programme automatisant une tâche répétitive (mise en forme, filtre, export, traitement en masse).
- Éditeur VBA
- Environnement (Alt+F11) où l'on lit, écrit et exécute le code des macros.
- Modèle objet
- Structure programmable de Project (Projets, Tâches, Ressources, Affectations…) manipulable en VBA.
Comment automatiser une tâche répétitive dans Project ?
En pratique — Automatiser avec des macros VBA
- Activez l'onglet Développeur (Fichier > Options > Personnaliser le ruban) pour accéder aux outils macros.
- Enregistrez une macro : lancez l'enregistreur, effectuez une tâche répétitive (filtre + mise en forme), arrêtez.
- Rejouez la macro sur un autre projet et constatez le gain de temps ; ouvrez l'éditeur VBA (Alt+F11) pour lire le code.
- Modifiez légèrement le code (ex. changer un paramètre) pour l'adapter, et associez la macro à un bouton pour la réutiliser.
Points clés à retenir
- Project s'automatise en VBA (même langage de macros qu'Excel/Word).
- L'enregistreur de macros capture des actions et les rejoue : automatiser sans coder.
- L'éditeur VBA permet d'écrire/modifier des macros manipulant le modèle objet (tâches, ressources…).
- Idéal pour les traitements en masse et le reporting sur mesure récurrents.
Questions fréquentes
Faut-il savoir programmer pour utiliser les macros VBA ?
Pas pour commencer. L'enregistreur de macros permet d'automatiser sans écrire une ligne : vous réalisez les actions une fois, Project les enregistre en code, et vous les rejouez. C'est suffisant pour beaucoup de tâches répétitives (appliquer un filtre + une mise en forme, générer une vue standard). Pour aller plus loin (traiter des tâches en masse, produire un reporting sur mesure, ajouter de la logique conditionnelle), il faut lire et modifier le code VBA, ce qui demande un apprentissage progressif. Bonne nouvelle : VBA est le même langage que dans Excel et Word, donc toute compétence acquise se réutilise. Commencez par enregistrer, observez le code généré, puis modifiez-le petit à petit : c'est la meilleure façon d'apprendre.
Quels sont les cas d'usage typiques d'une macro dans Project ?
Tout ce qui est répétitif et fastidieux : appliquer une mise en forme standard (couleurs, colonnes, filtres) à chaque nouveau projet ; renuméroter ou reclasser des tâches en masse ; générer un tableau récapitulatif ou un export personnalisé à chaque point d'avancement ; modifier un champ sur des centaines de tâches d'un coup ; produire un reporting au format maison. À la main, ces opérations prennent du temps et sont sujettes aux erreurs ; une macro les exécute en quelques secondes, toujours de la même façon. Le retour sur investissement d'une macro se juge comme toute automatisation : le temps de la créer doit être rentabilisé par sa répétition. Pour une action faite une fois, inutile ; pour un geste hebdomadaire, très rentable.