Excel - Graphiques - Tableaux Croisés - Macros - VBA et plus encore
Cette page complète le cours Macros et VBA Excel, en proposant des exercices pratiques pour mettre en application les notions abordées.
Apprendre le VBA Excel ne se limite pas à comprendre la syntaxe ou les concepts. Pour réellement maîtriser les macros, il est indispensable de mettre en pratique à travers des exercices concrets et des cas réels.
Cette page est dédiée aux travaux pratiques VBA Excel : chaque tutoriel propose un objectif précis (automatiser une tâche, créer un outil, fiabiliser un traitement) et s’appuie sur des fichiers d’exercices téléchargeables afin de reproduire pas à pas les manipulations.
Contrairement à la page consacrée aux cours VBA Excel, ici l’accent est mis sur l’expérimentation : écrire du code, tester, corriger, améliorer.
Élaborer une fonction personnalisée en VBA permettant de vérifier la syntaxe d'une adresse email.
Utiliser cette fonction personnalisée pour vérifier la saisie dans un formulaire VBA, ou pour effectuer un contrôle à la volée, via les procédures événementielles, lors de la saisie dans une feuille de calcul sans passer par Données - Validation des données
Pour élaborer cette fonction personnalisée, il sera nécessaire de manipuler des chaînes de caractères en VBA
Pour effectuer l'exercice sur le même fichier que dans la vidéo, il est possible de le télécharger ici : bibliotheque-apres-vba-8.xlsm
Comment récupérer toute l'arborescence d'un dossier, avec la liste des fichiers et des dossiers, et créer les liens hypertextes qui permettent d'ouvrir le dossier déterminé dans l'arborescence, ou un fichier qui se trouve dans un sous-dossier quelconque.
Un tuto qui aborde la notion de FileSystemObject (FSO) et de procédure récursive pour éviter la mise en œuvre de boucles complexes.
Final ... AnalyseArbo.xlsm Et pour avoir la liste sur un seul onglet... AnalyseArboUnOnglet.xlsm
Comment construire un diagramme de Gantt basique avec Excel.
Hypothèses de base pour cette version : uniquement des liens FD, durée des tâches uniquement en jours, et pas de notion de jours fériés, week-end, etc...
Résultat Final ... Gantt base
Voir sur Youtube : Gantt évolution 1
Diagramme de Gantt évolué avec Excel.
Hypothèses de base pour cette version : uniquement des liens FD, durée des tâches uniquement en jours, avec notion de jours fériés, week-end, etc... et mise en forme conditionnelle pour mettre en évidence les week-end et les jours fériés
Fichier de départ ... Gantt base Fichier final... Gantt évolution 1 Jours fériés... Paques.xlsx
Voir sur Youtube : Gantt évolution 2
Diagramme de Gantt plus évolué avec Excel.
Nous revenons sur la planification de projet avec le diagramme de Gantt dans Excel, et la prise en compte de la notion de jours écoulés (durée et retard), et relations FF (Fin - Fin), DD (Début - Début) et FD (Fin - Début).
Rappels:
Calcul de la date de fin par l'intermédiaire d'une formule dans la feuille Excel, et de la date de début en VBA, pour tenir compte de toutes les possibilités, avec utilisation de la fonction SERIE.JOUR.OUVRE (WORKDAY in English).
Nous restons avec le principe de durée uniquement en jours (ouvrés ou calendaires)
Fichier de départ ...Gantt évolution 1 Fichier final... Gantt évolution 2 Jours fériés... Paques.xlsx
Voir sur Youtube : Cours Yahoo Finance 1
Comment Rapatrier dans Excel les cours de bourses historiques accessibles dans Yahoo Finance.
Importation automatisée à partir du fichier csv que génère Yahoo Finance quand on souhaite l'historique des cours d'un titre donné.
Résultat Final ... YahooV1.xlsm
Voir sur Youtube : Cours Yahoo Finance 2
Comment rapatrier dans Excel les cours de bourses historiques accessibles dans Yahoo Finance.
Importation automatisée à partir du fichier csv que génère Yahoo Finance quand on souhaite l'historique des cours d'un titre donné. La différence avec la version 1 réside dans le traitement VBA. On va aborder la notion d'objet WinHttpRequest, le découpage de chaînes de caractères structurées en sous-éléments à l'aide de la fonction VBA.SPLIT, le travail sur les fonctions de Date, la fonction VBA.REPLACE pour modifier une chaîne de caractères, et plein d'autres astuces (Tableau Croisé Dynamique avec regroupement de valeurs sur les Dates, et Graphique croisé dynamique montrant le plus bas et le plus haut d'une période)
Résultat Final ... YahooV2.xlsm
Voir sur Youtube : Cours Yahoo Finance 3
Comment rapatrier dans Excel les cours de bourses historiques accessibles dans Yahoo Finance.
Importation automatisée à partir du fichier csv que génère Yahoo Finance quand on souhaite l'historique des cours d'un titre donné.
La différence avec la version 2 réside dans le nouveau traitement VBA suite aux modifications Yahoo Résultat Final ... YahooV3.xlsm
Voir sur Youtube : Formulaire selon choix 1
Comment afficher un formulaire VBA Excel, selon l'item choisi dans une zone de liste modifiable (combobox)
Pour effectuer cet exercice, nous allons parler des formulaires bien entendu, mais aussi rappeler comment créer des listes nommées de dimensions variables à l'aide du VBA et des procédures événementielles, comment calculer le logarithme décimal en VBA (à laide du logarithme népérien car la fonction logarithme décimal n'existe pas en tant que telle en VBA), ainsi que l'études de la collection Userforms (les formulaires ouverts dans le projet VBA)
Résultat Final ... ChoixOuverture.xlsm
Voir sur Youtube : Formulaire selon choix 2
Comment afficher un formulaire VBA Excel, selon l'item choisi dans une zone de liste modifiable (combobox)
Cette vidéo est à considérer en complément du tuto précédent qui présente un inconvénient, à savoir, que se passe-t-il si les items sont triés différemment :
Pour effectuer cet exercice, nous allons parler des formulaires bien entendu, mais aussi l'utilisation des fonction de feuille de calcul index et Equiv en VBA pour effectuer une recherche verticale.
Résultat Final ... ChoixOuvertureV2.xlsm
Une approche des variables tableaux à travers un exercice pratique consistant à extraire d'une base de données des "sous-bases", et les envoyer dans des feuilles de calcul différentes
Comment déclarer les variables tableaux, les dimensionner, de façon définitive ou évolutive.
Dans cette vidéo sera également abordée la problématique de la cohérence des dates entre Excel et VBA.
Démarrer l'exercice avec le bon fichier : Base de donnees EXPORT.xlsx
Résultat Final ... VariableTableau.xlsm
Comment gérer une liste à choix multiple pour sélectionner des options dépendants d'une rubrique située dans une autre colonne.
Comment restituer dans cette liste les options déjà sélectionnées.
Cet exercice nécessite l'utilisation du VBA.
Démarrer l'exercice avec le bon fichier : ListeMultiSource.xlsm
Résultat Final ... ListeMultiSourceFinal.xlsm
Résultat Final avec correction de bogues ... ListeMultiFinalCorrige.xlsm
Résultat Final version "Guillaume" : Formules dans données sources ListeMultiFinalCorrige_Guillaume.xlsm
Démarrer l'exercice avec le bon fichier : ListeMultiFinalCorrige.xlsm
Et le fichier final... ListeMultiFinalCorrigeP.xlsm
Résultat Final version "Guillaume" : Formules dans données sources ListeMultiFinalCorrigeP_Guillaume.xlsm
Voir sur Youtube : FAQ liste à choix multiple
Cette vidéo apporte des réponses aux questions posées par les utilisateurs dans la vidéo Liste à choix multiple avec contenu variable
Elle permet de répondre notamment aux questions suivantes :
Cet exercice nécessite l'utilisation du VBA.
Démarrer l'exercice avec le bon fichier : Liste Simple initial.xlsm
Résultat Final ... Liste simple final.xlsm
Voir sur Youtube : Statistique - Liste à choix multiple
Cette vidéo apporte des réponses aux questions complémentaires posées par les utilisateurs dans la vidéo Liste à choix multiple avec contenu variable
Elle permet de répondre notamment aux questions suivantes :
Cet exercice nécessite l'utilisation du VBA.
Démarrer l'exercice avec le bon fichier : ListeSimpleFinal.xlsm
Et obtrenir le fichier prêt à l'emploi... ListeSimpleStatFinal.xlsm
Voir sur Youtube : Liste à choix multiple Compatible Mac
Cette vidéo apporte des réponses à une question posée par un utilisateur Mac dans la vidéo Liste à choix multiple avec contenu variable
Elle permet notamment de comprendre comment gérer la nouvelle version d'Excel sur Mac, version qui ne supporte plus les Contrôles Active X.
Cet exercice nécessite l'utilisation du VBA.
Démarrer l'exercice avec le bon fichier : Liste Mac initial. Fichier de départ
Résultat Final ... Liste Mac final
Voir sur Youtube : Envoi de mail avec fichier attaché via Outlook
Comment envoyer un mail avec fichier attaché via Outlook en utilisant VBA Excel.
Cet exercice nécessite l'utilisation du VBA.
Démarrer l'exercice avec le bon fichier : Base_Mail.xlsm
Résultat Final ... Base_Mail_Final.xlsm