Université Libre de Bruxelles Section des sciences économiques et Solvay Busine
Université Libre de Bruxelles Section des sciences économiques et Solvay Business School Année académique 2004-2005 GUIDE D’APPRENTISSAGE DES MACROS d’EXCEL par Guy Mélard, Marc Colet et Hassane Njimi (avec la collaboration de Uwe Prasser) 2ère édition, 21 mars 2005 basé sur "Guide d’apprentissage des fonctions et des macros d’Excel" 1ère édition, 10 mars 2004 par Guy Mélard, Atika Cohen et Marc Colet PREFACE Ce texte constitue une introduction à la macro-programmation en Excel 2003. Disponible depuis la version 5.0 d'Excel, le langage de programmation s'appelle Visual Basic for Applications (le langage de programmation des applications de Microsoft Office, en abrégé VBA). Nous conseillons aux lecteurs intéressés de consulter un ouvrage tel que "Visual Basic pour Applications 6", de Mikaël Bidault, Editions CampusPress, Paris, 1999. Nous nous limitons à quelques possibilités offertes par les macros afin d’illustrer l’algorithmique et la programmation. Il faut noter que la macro-programmation VBA est disponible également sous Word, PowerPoint, Outlook et FrontPage (à partir de la version 6 sous Office2000). VBA permet d’automatiser les tâches, de créer des applications complètes, de sécuriser vos saisies et vos documents, de créer de nouveaux menus et de nouvelles fonctions pour améliorer efficacement votre logiciel. VBA, langage puissant, souple et facile à utiliser permet de réaliser très rapidement des applications qui vous feront économiser du temps et de l’argent. Les applications VBA pour Excel sont abritées dans un document Excel ou classeur (appelé "workbook") mais peuvent manipuler des informations situées dans d'autres documents de Microsoft Office. Plus généralement, VBA doit fonctionner dans un environnement approprié. Par exemple un projet VBA pour Excel nécessite l'ouverture dans Excel d'un classeur Excel contenant les modules du programme. Une application VBA créée sous Excel ne pourra pas se lancer sur un poste si Excel n’est pas installé. Il existe également un langage de programmation appelé Visual Basic tout court, maintenant une partie de Visual Studio .NET, qui permet de développer sous Microsoft Windows (Windows NT/2000/XP) des applications qui ne sont pas liées à Microsoft Office. Le Visual Basic et le Visual Basic for Applications sont dérivés du langage Basic qui existe depuis 1965 (Basic est l'acronyme de Beginner's All-purpose Symbolic Instruction Code). Il a été conçu par Tom Kurtz et John Kemeny du Dartmouth College. Basic (sous les noms Basica ou GWBasic) était le langage de programmation au premier temps des PC. Il a évolué en passant par le Qbasic (inclus sous MS-DOS depuis la version 5.0). Les macro-programmes d’Excel 4.0 n'étaient pas basés sur Basic mais fonctionnent toujours dans les versions ultérieures d'Excel. Le langage Basic de VBA est compatible avec le Liberty Basic (illustré dans "Débuter en Programmation", de Greg Perry, Editions CampusPress, Paris, 2002) et avec le S-Basic de la suite libre OpenOffice.org et de StarOffice de Sun. Toutefois, les objets (fenêtres, boutons et autres contrôles) ainsi que leurs méthodes et leurs propriétés ne sont pas compatibles. 2 CHAPITRE 1 VBA : L'EDITEUR DE MACRO Lancez Excel. L'éditeur de macro, ou VBE (Visual Basic Editor) est l'environnement de programmation de VBA. Il se lance par le menu "Outils-Macro-Visual-Basic-Editor" ou par le raccourci clavier "Alt+F11". 1.1 Les principales fenêtres de VBE : 1- Fenêtre VBAProject. Elle présente les différents projets ouverts et permet de naviguer facilement entre vos différentes feuilles de codes VBA. 2 - Fenêtre Code. C'est l'endroit ou vous allez saisir votre code VBA. 3 3 - Fenêtre Propriétés. Propriétés de l'objet sélectionné. 4- Fenêtre Exécution. Elle permet de tester une partie du code. Elle peut s'avérer très utile pour voir comment s'exécutent certaines lignes de code. Il est fort probable que l'aspect de votre éditeur de macros soit différent. Il est en effet personnalisable car chaque fenêtre peut être masquée puis réaffichée par le menu "Affichage". Cependant, cette configuration vous permettra de débuter de façon confortable l'écriture de vos premières macros. 1.2 Configuration de l’éditeur de macros : Il est important de bien configurer l'éditeur de macros. En effet, VBE peut vous aider dans l'écriture de votre code et le mettre en forme de façon à ce qu'il soit plus facile à lire. Sous VBE, lancer le menu "Outils-Options" : 1 - Onglet Editeur : • Vérification automatique de la syntaxe : vérification automatiquement de la syntaxe lors de la saisie d' une ligne de code. Déclarations de variables obligatoires : sous VBA, la déclaration de variables n'est pas obligatoire. Cependant, je vous conseille de cocher cette option. De plus amples informations au sujet des variables seront disponibles dans le cours "Les variables". Si la case est cochée, l'instruction "Option Explicit" est ajoutée dans les déclarations générales de tout nouveau module. • Complément automatique des instructions : cette option permet à VBE de vous aider dans la saisie de votre code. Vous comprendrez très vite son utilité lorsque vous saisirez vos premières lignes de codes. 4 • Info express automatique : encore une option très utile. Elle affiche les différents arguments que possède la fonction que vous venez de taper. • Info-bulles automatique : indispensable lors d'un déboguage pas à pas. Elle permet l'affichage de vos variables. • Retrait automatique : permet à VBE de placer chaque ligne de code au même niveau que la ligne précédente. Le retrait de lignes se fait par les touches "Tab" et "Shift+Tab". Cette option est nécessaire pour une bonne lecture du code VBA. • Paramètres de la fenêtre : les 3 options sont intéressantes. L'édition de texte par glisser-déplacer permet de déplacer à l'aide de la souris le bloc de code sélectionné, l'affichage du module complet par défaut permet l'affichage de toutes les procédures d'un même module et la séparation des procédures oblige VBE à créer des traits entre chaque procédure. 2 - Onglet Format de l'éditeur : Cet onglet permet de changer la police et son format pour les différentes parties du code inscrit dans vos modules. On ne vous conseille pas de changer les paramètres par défaut. Ces différentes options vous permettent de configurer à votre convenance l'éditeur de macros. Si vous débutez, il est conseillé de garder les options par défaut. CHAPITRE 2 A PROPOS DES MACROS Les fonctions sont des outils de calcul que vous pouvez utiliser pour aider à la prise de décision, à l’exécution d’actions et à l’obtention automatique de synthèses de données. Excel propose deux types de fonctions: les fonctions de feuille de calcul (que vous avez déjà utilisées) et les fonctions macro. Vous pouvez utiliser les fonctions de feuille de calcul à la fois dans les feuilles de calcul et 5 dans les macros. Par exemple, la fonction SUM (utilisée dans le texte sur Excel) calcule la somme de plusieurs nombres; il s’agit d’une fonction feuille de calcul également disponible dans une macro. Certaines fonctions ne sont disponibles que dans les feuilles macro. De nombreuses fonctions macro acceptent et renvoient également des valeurs. Les macros sont des mini-programmes que l’on édite dans des feuilles macro. Plusieurs macros peuvent être éditées dans une feuille. Signalons enfin que les opérateurs (+, - , / *, &, ^, ...) sont disponibles aussi bien dans les feuilles de calcul que dans les macros. Enregistrement des macros La manière la plus simple de créer une macro dans Excel est de l'enregistrer. Cela permet déjà d’automatiser des tâches et donc de les accélérer. L'enregistrement peut comporter des déplacements dans la feuille, des actions correspondant aux commandes des menus et à l'état final des boîtes de dialogues qui sont activées, y compris le recours aux fonctions et aux modules supplémentaires. Néanmoins il n'est pas possible de tout faire de cette manière. Ni les interactions (affichages de message, saisie de données à l'exécution), ni le contrôle du programme (instructions pour réaliser des conditions et des boucles) ne sont susceptibles d'être enregistrées parce qu'elles ne correspondent pas à des commandes des menus. Pourtant, on recommande de commencer par enregistrer des séquences d'opérations (éventuellement de manière séparée), de modifier si nécessaire le programme VBA produit et de les relier ensuite dans l'application, ou mieux encore dans des procédures isolées qui seront ensuite assemblées pour réaliser l'application. Lors de l'enregistrement d'une macro, il est essentiel de choisir entre adressage absolu et adressage relatif. En adressage absolu, la ligne et la colonne des cellules sont enregistrées à chaque sélection. En adressage relatif, ce sont seulement les déplacements en nombre de lignes et de colonnes, en plus (à droite ou vers le bas) ou en moins (à gauche ou vers le haut) qui sont enregistrés. A tout moment on peut passer de l'un à l'autre des adressages en cliquant sur le bouton de droite de l'enregistreur de macro. Ecriture des macros Comme nous l'avons dit, la syntaxe des macros d’Excel s'appuie sur le langage Basic. Dans ce texte, nous nous référons au langage de description d’algorithme (LDA) (étudié notamment dans le cours "Modélisation partie informatique" de G. Mélard, disponible aux Presses Universitaires de Bruxelles). Une comparaison détaillée est donnée dans le chapitre 3 qui n’est pas essentiel en première lecture. Le lignes de commentaires commencent par une apostrophe (‘). Les lignes trop longues peuvent être coupées uploads/S4/ vba-for-excel.pdf
Documents similaires
-
14
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Apv 05, 2021
- Catégorie Law / Droit
- Langue French
- Taille du fichier 0.3732MB