Enfin, mon premier livre sur VBA (Visual Basic for Application) le langage obscur d’Excel : cela fait plus de 15 ans que j’utilise ce langage sans avoir lu le moindre le livre : Google a été mon ami pendant toutes ces années, il est l’heure à présent de vérifier si je maîtrise bien les fondamentaux de ce langage de programmation. Bon, c’est un livre de l’ENI, toujours en noir et blanc et toujours aussi austère mais bon, je vais essayer de me concentrer sur le fond principalement.
LA FICHE D’IDENTITE
- Nombre de pages : 462 pages
- Dimensions du produit: 21,6 x 2,5 x 17,8 cm
- Editeur : ENI
- Date de parution : 13 Janvier 2016
- Collection : Ressources informatiques
- Prix : 29,90 €
- Lien Amazon
L'auteur
Mais qui est Michèle AMELOT?
A la fois spécialiste de développements spécifiques et responsable pédagogique, Michèle AMELOT accompagne depuis plus de 15 ans des entreprises dans la conduite de leurs projets informatiques. C’est, entre autres, cette connaissance approfondie des besoins des utilisateurs et des développeurs qui lui permet dans ses ouvrages (VBA Excel et VBA Access, toutes versions) de faciliter l’apprentissage et la pratique de la programmation en langage VBA.
La Forme
La présentation : un livre très épais.
La qualité du papier : papier très épais.
Le poids de l’ouvrage : 716 grammes le gros bébé. (le plus lourd!!!)
Couleur ou noir et blanc : Noir et blanc.
Les images : les images peu nombreuses.
Le Fond
Thèmes abordés sont les suivants :
PRESENTATION |
30 PAGES |
Présentation du langage VBA |
|
Les Macros Excel |
|
Les Affectations des macros |
|
L’environnement VBE |
|
Configuration |
|
LE LANGAGE VBA |
44 PAGES |
Les modules |
|
Les procédures |
|
Les variables |
|
Les structures de décisions |
|
Les structures en boucles |
|
Les opérateurs |
|
Les règles d’écriture du code |
|
LA PROGRAMMATION OBJET |
18 PAGES |
Présentation |
|
Le modèle objet Excel |
|
Principes d’utilisation des objets et collections |
|
Instructions utilisées avec les objets |
|
L’explorateur d’objets |
|
LES OBJETS D’EXCEL |
76 PAGES |
L’objet Application |
|
L’objet Workbook |
|
L’objet Worksheet |
|
L’objet Range |
|
Exemples d’utilisation des objets |
|
LES TABLEAUX CROISES ET GRAPHIQUES |
19 PAGES |
Les tableaux croisés dynamiques |
|
Les graphiques |
|
Exemple d’application |
|
Création d’un tableau croisé dynamique avec des sparklines |
|
LES BOITES DE DIALOGUE |
10 PAGES |
Présentation |
|
Les boites de dialogue intégrées |
|
Les boites de dialogue prédéfinies |
|
LES FORMULAIRES |
20 PAGES |
Présentation |
|
Créer un formulaire |
|
Personnaliser un formulaire |
|
Exemple de formulaire personnalisé |
|
AMELIORATION DE L’INTERFACE UTILISATEUR |
44 PAGES |
Présentation |
|
Personnalisation du ruban avec Custom UI Editor |
|
Exemple de ruban personnalisé avec Custom UI Editor |
|
Personnalisation du ruban avec la collection CommandBars |
|
Exemples de barres de commandes |
|
Les barres de commandes |
|
Contrôles des barres de commandes |
|
Exemples de menus personnalisés |
|
GESTION DES EVENEMENTS |
18 PAGES |
Présentation |
|
Ecriture des évènements |
|
Les évènements de l’objet Application |
|
Les évènements de l’objet Workbook |
|
Les évènements de l’objet Worksheet |
|
Les évènements de l’objet Chart |
|
DEBOGAGE ET GESTION DES ERREURS |
9 PAGES |
Les différents types d’erreur |
|
Débogage |
|
Gestion des erreurs en VBA |
|
COMMUNICATION AVEC LES APPLICATIONS OFFICE 2016 |
26 PAGES |
La technologie Automation |
|
Communiquer avec Word depuis Excel |
|
Communiquer avec Access depuis Excel |
|
Communiquer avec Outlook depuis Excel |
|
Les objets liés ou incorporés |
|
Méthodes et propriétés relatives aux liaisons Excel |
|
INTERNET |
21 PAGES |
Requêtes sur Internet |
|
L’objet QueryTable |
|
Publication de pages Web |
|
Les objets WebOptions et DefaultWebOptions |
|
Import, export et mappage de fichiers XML |
|
L’objet Hyperlink |
|
PROGRAMMATION WINDOWS |
9 PAGES |
Présentation des API |
|
Appel d’une fonction de l’API Windows |
|
Liste des fonctions API Windows |
|
Exemples d’utilisation de fonctions API Windows |
|
L’objet FileSystemObject |
|
CODE D’UNE MINI-APPLICATION |
16 PAGES |
Présentation générale |
|
Description de l’application GestDevis |
|
Ruban Office 2016 personnalisé |
|
Module ThisWorkbook |
|
Formulaire NouveauDevis |
|
Formulaire RechDevis |
|
Modules ProcRuban et ProcGene |
|
ANNEXES – LEXIQUE |
33 PAGES |
Avant toute chose, je souhaite valoriser le sommaire qui me semble, à priori, détaillé et chronologique : j’ai vraiment hâte de le lire car très prometteur 😉
Alors ce premier chapitre, vous indique en premier lieu qu’il vous faut avoir une relative bonne maîtrise d’Excel et également des bases dans la programmation : en effet, il important de le signaler, que sans ces deux pré-requis ce livre risque de vous sembler complexe.
Au cours de ce chapitre, l’auteur vous donne le lexique des mots à maîtriser tels que les projets, les modules, les procédures et fonctions, il distingue les macros créer par le générateur ainsi que les macros développées manuellement. Il vous présente le VBE, l’éditeur du langage de développement VBA avec ses différentes fenêtres, options et paramétrage. Dès ce premier chapitre, vous allez découvrir comment intégrer votre macro soit dans le ruban, soit dans l’accès rapide, soit à un bouton, soit à une image… Bref, les bases de la création et du lancement d’une macro VBA. Top, top, top… ça commence bien 😉
Le deuxième chapitre nous détaille les types de déclarations, les types de variables, où et quand les déclarer… Il s’agit d’un chapitre très technique et je ne suis pas sûre que tout le monde comprenne bien les tenants et aboutissants de chaque spécificité : pour ma part, j’ai trouvé ce chapitre un peu long mais je le rappelle détaillé comme il doit l’être pour une bonne compréhension du fonctionnement des variables. Je conseille de lire rapidement ce chapitre et d’y revenir plus tard.
Ce chapitre nous présente également les structures de décision (IF…ELSE et les SELECT CASE), les boucles (LOOP, FOR…) et les opérateurs : il s’agit des bases du développement. Vous devez être capable de comparer des valeurs, de faire des boucles et de mettre des conditions. Cette partie est très importante et bien détaillée.
Bon le troisième chapitre liste à son tour les définitions des modèles, collections, objets… Ces listings sont importants je n’en doute pas mais il est vrai que cela fait beaucoup de notions à intégrer (même pour moi qui développe sous VBA depuis 15 ans, je trouve cela un peu complexe, alors j’imagine le novice 😉 ) On a envie d’y aller, la théorie, les définitions, c’est bien mais bon… On a envie de passer à la pratique.
Le chapitre 4 vous explique les différents mode de calcul et les options de correction orthographique : je ne suis pas sûre que cela vous soit d’une grande utilité dans vos développements. Comment développer le paramétrage des options… pareil : vous pouvez aller dans les paramètres d’Excel une fois pour toute ;(
Enfin, on vous donne les propriétés des workbooks, des worsheets et des ranges : il s’agit des éléments de base sur lesquels vous allez travailler. Toujours sous forme de listing (très très long), on vous y détaille les propriétés et leurs définitions. Quelques exemples mettent en application certaines fonctionnalités, alors n’hésitez pas à prendre la main sur VBA pour faire une pause et faire de la pratique.
Le livre est composé comme tel : on vous prend un sujet, on liste toutes ses propriétés et fonctionnalités puis un exemple succins pour illustrer.
Le chapitre 5 concerne les tableaux croisés dynamiques et les graphiques : un exemple de 8 pages vous ai proposé. Vous allez créer des procédures, faire de la mise en forme, ajout des tableaux croisés dynamiques, des graphiques… Ouah un énorme exercice qui reprend toutes les fonctionnalités précédemment vues. Moi qui voulait de la pratique, ça c’est fait. Il me semble que quelques exemples un peu plus conséquents précédemment aurait été plus sages genre prendre la chronologie de l’exercice pour que l’utilisateur comprenne progressivement les différentes tâches à accomplir pour arriver à un code complet, là on vous balance tout d’un coup… Je vous rassure vous n’aurez pas à ressaisir les 8 pages de code : vous avez <<ici>> à votre disposition les fichiers sources du livre.
Le chapitre suivant vous présente les boites de dialogues c’est à dire la gestion de message de confirmation soit définis soit spécifiques : par exemple, souhaitez-vous supprimer cette cellule ou voulez-vous ajouter un montant à Monsieur Durand et en fonction de votre réponse vous pourrez piloter Excel en réalisant le code en VBA.
C’est une façon vraiment particulière de présenter les choses : le chapitre 7 vous présente les formulaires. Thème vraiment important lorsque l’on souhaite développer des outils sur Excel. Comme précédemment, on vous liste l’ensemble des propriétés des contrôles puis l’ensemble des événements et ensuite le code d’un programme. Sincèrement, la liste des éléments est vraiment impressionnante et ensuite on vous donne tout, tout cuit… Bon je crois que je vais devoir m’y faire, mais je trouve cette pédagogie assez scolaire du genre “Je vous donne les définitions, je vous donne la solution, allez à vous maintenant.” Je ne suis pas convaincue que ce genre de pédagogie fonctionne bien. Vous me le direz en mettant un commentaire sur cet article 😉
Le chapitre 8 est très intéressant on vous y apprend à créer une barre de menu spécifique pour un classeur donné en utilisant l’outil Custom UI Editor : j’utilise moi-même cet outil et il est en effet très utile pour masquer des bandeaux et créer vos propres menus. Lorsque vous souhaitez vraiment utiliser un classeur comme un pur logiciel à s’en demander même s’il s’agit d’Excel, ce cours va vraiment vous intéresser. Je ne vous cache pas que l’on passe à un autre degré de développement sous Excel 😉 On vous y présente également la possibilité de paramétrer les commandbars c’est à dire les listes déroulantes lorsque vous cliquez droit : très utile lorsque vous souhaitez aider l’utilisateur à la saisie notamment.
La gestion des événements est détaillée dans le chapitre 9 : il s’agit d’associer du code VBA à un événement par défaut d’Exel. Par exemple : vous souhaitez avoir un message disant “au revoir” à l’utilisateur lorsqu’il ferme le classeur, vous utiliserez donc l’événement BeforeClose 😉 Les événements sont très importants et répondent à la question : sur quelle action est ce que je souhaite réaliser une autre action? soit sur en cliquant sur un bouton, soit avant d’enregistrer un document, soit en cliquant sur une cellule, soit en changeant de feuille…
Le chapitre 10 vous liste les erreurs les plus fréquentes en VBA et surtout comment les corriger grâce à la barre d’outils de débogage et le mode pas à pas.
Ahhh encore un chapitre très intéressant le onzième, la communication entre Excel et ses cousins Word, ACCESS et Outlook : fréquemment mes clients souhaitent à partir d’Excel, générer un publipostage avec Word ou un mailing avec Outlook. Ce chapitre est une mine d’information précieuse pour vous si vous souhaitez qu’Excel pilote ses deux outils bureautiques incontournables.
Le chapitre 12 utilise une option que je n’ai jamais eu encore besoin il s’agit de l’import de données à partir d’une source de données internet.
Le chapitre 13 vous présente succintement les API Windows : il s’agit de DLL mise à votre disposition pour “piloter” certaines fonctionnalités de Windows telle que la gestion des répertoires ou la calculatrice par exemple.
L’avant dernier chapitre, est l’explicatif d’une application de gestion de devis : l’auteur vous détaille la composition de cet outil livré en pièce jointe (le lien est un peu plus haut dans l’article). Cette application utilise des formulaires VBA, une connexion à Access, un bandeau spécifique développé en XML. Il s’agit d’un TP reprenant plusieurs fonctionnalités vues dans cet ouvrage.
Le dernier chapitre est un lexique de tous les termes utilisés dans ce livre.
EN RESUME,
Pour mon premier livre en VBA, je suis assez surprise du niveau de l’ouvrage : je serais tentée de vous le recommander si vous avez déjà de relatives bonnes notions en VBA et surtout en programmation. De plus, je trouve que la partie théorique (et un peu rébarbative) de l’ensemble des fonctionnalités peut noyer le lecteur et surtout l’impressionner et donc de le décourager. Les exemples et images sont à mon goût trop rares. Par contre, toutes les notions et fonctionnalités sont présentes : cet ouvrage peut être un bon support d’apprentissage à condition de l’étudier en profondeur chapitre après chapitre.
Le rapport Qualité / Prix
Il est pour l’instant l’ouvrage le plus cher avec presque 30€ d’investissement. Je risque d’être un peu sévère avec lui car il s’agit de mon premier livre en VBA et je le trouve trop théorique et complexe pour débuter la programmation Excel avec lui. De plus, je trouve que la méthodologie d’apprentissage (beaucoup de listing et de terme technique) pour trop peu de mise en pratique peut décourager le lecteur.
LA NOTE
AVANTAGES :
– Ouvrage complet
– Un classeur par chapitre disponible en téléchargement
INCONVENIENTS :
– Livre trop théorique à mon goût et assez austère
– Nécessite un bon niveau en programmation
Même si j’ai appris une nouvelle fois quelques notions, je pense que cet ouvrage est trop généraliste et vous liste toutes les fonctionnalités trop dans le détail pour une première prise en main de VBA. Une approche plus sur la pratique en se basant sur la création d’une application pas à pas (genre l’application GesDevis proposée à la fin de l’ouvrage) aurait été il me semble plus efficace.