Objectifs pédagogiques
A l'issue de cette formation, vous serez capable de :
- Enregistrer, modifier et exploiter une macro-commande
- Créer des procédures, des procédures évènementielles et des fonctions
- Identifier le rôle et exploiter des variables et des constantes
- Utiliser les boîtes de dialogue système prédéfinies
- Concevoir des instructions en boucle
- Concevoir des instructions conditionnelles
- Utiliser les collections d'objets et les variables objets
- Exploiter les fonctionnalités de débogage
- Mettre en oeuvre une gestion d'erreurs
- Déclarer et utiliser des variables tableaux
- Concevoir des interfaces utilisateurs avec les formulaires
- Gérer les liaisons multi-applicatives avec les technologies d'automation
- Automatiser les importations de données.
Compétences attestées par la certification
Domaine 1 : Gestion des objets VBA
- Manipuler les objets Excel : automatiser les processus dans Excel en utilisant et en gérant les principaux objets tels que Workbooks (cahiers de travail), Worksheets (feuilles de calcul), Ranges (plages de cellules), et Charts (graphiques), afin de simplifier les tâches spécifiques et optimiser la gestion des données
- Gérer les collections d'objets : gérer les groupes d'objets similaires dans Excel, comme les collections Worksheets ou Cells, en parcourant, ajoutant ou supprimant des éléments de la collection, et en utilisant des boucles afin d'automatiser les opérations répétitives sur chaque élément de la collection
- Interfacer avec d'autres applications : utiliser VBA pour interagir avec d'autres programmes Microsoft 365 tels que Word, Access et Outlook, afin d'automatiser des tâches inter-applications, comme l'exportation de données depuis Excel vers Word ou l'envoi d'emails via Outlook, en exploitant les objets COM (Component Object Model) pour fluidifier les processus
Domaine 2 : Procédures VBA
- Ecrire des procédures : créer des sous-routines et des fonctions en VBA pour exécuter des tâches spécifiques, en utilisant des arguments et des paramètres pour passer des données entre les procédures, afin d'améliorer la modularité et la réutilisabilité du code
- Traiter les erreurs et exceptions : mettre en place des mécanismes de gestion des erreurs en utilisant des structures et des blocs conditionnels pour anticiper et traiter les erreurs, et en développant des procédures de nettoyage et de récupération après une erreur, afin de rendre le code plus robuste et moins sujet aux plantages
- Améliorer la performance du code : optimiser les routines VBA en minimisant les accès aux objets Excel, en utilisant des types de données appropriés, en optimisant les boucles et en gérant la mémoire de manière efficace, afin qu'elles s'exécutent plus rapidement et de manière plus performante
Domaine 3 : Boîtes de dialogue, formulaires et contrôles
- Concevoir des formulaires : créer des UserForms (formulaires utilisateur) en VBA en configurant l'interface utilisateur, en ajoutant des contrôles tels que des boutons, des étiquettes et des zones de texte, et en gérant leur disposition ainsi que leurs propriétés, afin de faciliter l'interaction avec l'utilisateur
- Implémenter des contrôles ActiveX : ajouter et gérer des contrôles ActiveX dans les formulaires ou directement dans les feuilles de calcul Excel, en insérant des contrôles tels que des boutons, des cases à cocher et des listes déroulantes, afin d'améliorer l'interactivité et la fonctionnalité des applications
- Gérer les événements de formulaires : écrire du code pour répondre aux actions de l'utilisateur sur les formulaires, en utilisant les événements associés aux contrôles et aux formulaires, afin de déclencher des actions spécifiques et d'améliorer l'interactivité des applications
Domaine 4 : Environnement VBA et utilisation des outils de débogage
- Utiliser les outils de débogage : connaître et utiliser les outils intégrés dans l'IDE VBA, tels que les points d'arrêt, la fenêtre d'exécution, la surveillance des variables et l'exécution pas à pas du code, afin d'identifier et de corriger les erreurs efficacement
- Analyser et suivre le code : utiliser les fonctionnalités de traçage et de journalisation en employant des instructions Debug. Print pour afficher des messages dans la fenêtre Exécution et en analysant les flux d'exécution, afin de comprendre le comportement du code, identifier les problèmes potentiels et optimiser les routines
- Optimiser l'environnement de développement : configurer l'IDE VBA en personnalisant l'éditeur, en gérant les références de projet, en utilisant des modèles de code et en mettant en place un environnement structuré, afin de maximiser l'efficacité du développement et faciliter la gestion des projets VBA.
Lien pour visualiser le détail de la certification enregistrée au RS : https://www.francecompetences.fr/recherche/rs/6963/
Niveau requis
Avoir suivi les cours EXC-EXP "Excel - Expertise - Exploiter des tableaux complexes" et/ou EXC-MA "Excel - Atelier - Automatiser vos tableaux avec les macro-commandes" ou avoir les compétences équivalentes.
Public concerné
Utilisateurs confirmés d'Excel voulant maîtriser le langage Visual Basic dans Excel afin de créer des applicatifs sur-mesure.
Programme
Les macros
- Généralités
- Afficher l'onglet "Développeur"
- Enregistreur de macros
- Création et édition de macros
- Définir la portée des macros
- Utiliser les références relatives
- Appeler une macro par la liste des macros
- Affectation des macros à un bouton de commande, une illustration ou une forme
- Les touches d'exécution
- Le code VBA
- Changer les options d'une macro
- Lire et alléger le code VBA
- Compléter une macro existante
- Déboguer une macro
- Personnaliser le ruban et la barre d'outils accès rapide
- Mettre en place un nouvel onglet
- Ajouter des onglets, des groupes et des boutons de macros
- Personnaliser la barre d'outils Accès rapide pour tous les classeurs ou pour "ce classeur"
- Exporter la personnalisation du ruban
L'environnement VBA (Visual Basic pour Application)
- Accéder au Visual Basic Editor
- Découvrir les fenêtres
- Menus
- Barres d'outils
- L'explorateur de projets
- Fenêtre des propriétés
- Les modules
- L'explorateur d'objets
- Définition et dernière position
- Ajouter des signets
- Personnaliser les options VBA
- Protéger le code VBA
Travailler dans un module basic VBA
- Créer des procédures et des fonctions
- Définir des fonctions et procédures avec argument(s)
- Procédures et fonctions appelées
- Exploitation de fonctions dans la feuille de calcul
- Commenter son code
- L'organisation d'un module VBA
- La mise en place d'étiquettes
- La fenêtre Rechercher
Variables et constantes
- Ajouter des variables et des constantes
- Les différentes portées de variables et de constantes
- Les différents types de variables et des constantes
- Les déclarations élaborées
- L'instruction Type
- L'instruction Deftype
- Créer des énumérations avec l'instruction Enum
Collections, objets, méthodes et propriétés
- La logique de la programmation objet
- Le vocabulaire associé au VBA
- Instruction, mot-clé, argument, méthode, propriété, évènement
- Manipuler les différents types d'objets les plus utilisés
- Workbook, Worksheet, Range, Cells
- ActiveCell, ActiveSheet, Selection
- Les principales propriétés et méthodes
- L'affectation d'objets à des variables d'objets
- Déclarer et utiliser des tableaux : taille fixe, dynamique et multidimensionnelle
- Redimensionner un tableau avec ReDim
Les instructions courantes Visual Basic
- Les instructions de boucles
- Les boucles en Do
- Do While…Loop
- Do Until…Loop
- Do…Loop While
- Do…Loop Until
- Exit Do
- Les boucles en For
- For…Next
- Exit For
- Les boucles historiques
- While Wend
- Les boucles pour les collections d'objet
- For Each
- Les instructions conditionnelles
- If Then Else
- If Then ElseIf
- Iif
- Select Case
- Les opérateurs
- Les opérateurs logiques
- Les opérateurs de comparaison
- Les opérateurs arithmétiques
- L'opérateur de concaténation
- Les incontournables
- With…End With
- Debug. Print
- Couper une ligne de code sur plusieurs lignes
Les fonctions courantes
- Les fonctions de conversion
- Cdate, Cstr, Cint...
- Les fonctions de test
- Isnumeric, isdate...
- Les fonctions de texte
- Left, Mid, Trim, Format...
- Les fonctions de date
- Dateadd, Datediff
Boîtes de dialogue prédéfinies
- Fenêtre à questions ouvertes
- InputBox
- Application. Inputbox
- Fenêtre à questions fermées : MsgBox
- Choix des boutons dans MsgBox
Gestion des évènements
- Les modules Microsoft Excel Objects
- Création de procédures évènementielles
- Pour le classeur
- Pour la feuille
Le débogage
- Utilisation des outils de débogage
- Les modes de pas à pas
- Créer un point d'arrêt
- Les fenêtres des variables locales et d'exécution
- Ajouter des espions et étudier leurs comportements dans la fenêtre des espions
Gestion des erreurs
- Les techniques de prévention des erreurs
- Mettre en place une gestion d'erreur
- L'objet ERR
- Les méthodes Raise et Clear
- Les propriétés Number et Description
- Les instructions Resume et Resume Next
Boîtes de dialogue personnalisées (UserForm)
- La création de contrôles
- Boutons
- Etiquettes
- Groupe d'options et cases à cocher
- Listes déroulantes et listes
- Barres de défilement
- Boîtes à onglets
- Aligner et répartir la disposition des contrôles
- Les propriétés incontournables
- Définir l'ordre de tabulation
- Définir des procédures évènementielles
- Déclencher et afficher une boîte de dialogue
Manipulation d'objets graphiques
- Manipuler les graphiques et les formater
- Construction de tableaux croisés dynamiques
- Utilisation de filtres avancés
Fonctionnalités avancées
- Référencer un modèle objet automation
- S'affranchir des références aux librairies (liaisons anticipées ou tardives)
- Piloter une autre application Microsoft en VBA (Outlook, Word ou PowerPoint)
- Accéder à des données avec les bibliothèques ADO ou DAO
- Importer une partie d'un fichier texte
Acculturations aux techniques élaborées
- Faire appel aux fonctions API de Windows
- Créer des objets personnalisés avec des modules de classes
Passage de la certification
- Le prix de la certification est inclus dans la formation
- L'examen (en français) sera passé soit à la fin de la formation, soit ultérieurement dans nos centres de formation
- Il est composé de 35 questions, s'effectuera en ligne et durera en moyenne 1h00
- A l'issue de la certification, le candidat se verra attribuer un score (0 à 1000), correspondant à un niveau (Initial / Basique / Opérationnel / Avancé / Expert) :
- En deçà du score de 551 points, le candidat se verra attribuer une attestation de passage de la certification. Ces niveaux Initial et Basique ne valident cependant pas l'obtention de la certification
- Les niveaux Opérationnel, Avancé et Expert permettent, quant à eux, au titulaire de la certification de faire valoir ses compétences dans la gestion de VBA et d'attester de son opérationnalité selon son profil et l'emploi qu'il exerce
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités d’évaluation des acquis
- En cours de formation, par des exercices pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation et une certification
Accessibilité de la formation
Le groupe M2i s'engage pour faciliter l'accessibilité de ses formations. Toutes nos formations sont accessibles aux personnes en situation de handicap : les détails de l'accueil des personnes sont consultables sur la page Accueil PSH.
Modalités et délais d’accès à la formation
Les formations M2i sont disponibles selon les modalités proposées sur la page programme. Les inscriptions sont possibles jusqu'à 48 heures ouvrées avant le début de la formation. Dans le cas d'une formation financée par le CPF, ce délai est porté à 11 jours ouvrés.