1 • Les bases du langage VBA 1. 1. Premiers pas en VBA 2. 2. Le VBA : un langag
1 • Les bases du langage VBA 1. 1. Premiers pas en VBA 2. 2. Le VBA : un langage orienté objet 3. 3. La sélection 4. 4. Les variables 1/2 5. 5. Les variables 2/2 6. 6. Les conditions 7. 7. Les boucles 8. 8. Modules, fonctions et sous-routines • Premiers pas en VBA Dans cette partie, nous allons approfondir les macros : le temps est venu pour vous de personnaliser vos propres bestioles ! Du VBA, pour quoi faire ? Relisez le chapitre sur les macros. Nous y avons vu qu'une macro est une série d'instructions. Lorsque vous exécutez cette macro, vous exécutez cette série d'instructions. Cette fameuse série, elle est écrite quelque part dans un code informatique : le VBA, qui signifie Visual Basic pour Application. Le VBA a donc besoin d'une application, en l’occurrence ici Excel, pour fonctionner. Nous avons vu également que pour accéder à ce code, il fallait appuyer sur Alt + F11 mais... c'est un peu le bazar lorsque nous arrivons sur la fenêtre. Mais alors, à quoi ça sert, le VBA ? À coder vos propres macros, pardi ! Il y a en effet des macros que vous ne pourrez jamais faire en faisant travailler l'enregistreur, comme compléter la dernière ligne d'un tableau. Ça sera à vous de les réaliser ! L'interface de développement L'interface de développement, c'est la fenêtre sur laquelle vous tombez lorsque vous appuyez sur Alt + F11 ou encore lorsque vous vous rendez dans l'onglet « Développeur », dans le groupe « Code » et que vous cliquez sur le bouton : Si vous ne savez plus comment activer l'onglet « Développeur », je vous redirige vers le chapitre précédent. Nous allons tout d'abord voir comment s'organise un projet et inévitablement, comment fonctionne l'interface de développement. 2 Un projet, oui mais lequel ? Là, c'est vous qui décidez. Un projet s'applique en général sur un travail dans le classeur ou dans une feuille de calcul particulière. C'est un groupe de macros, qui s'appellent entre elles, qui échangent avec l'utilisateur... Vous codez une macro dans ce qu'on appelle un module. C'est comme une feuille blanche dans laquelle vous allez écrire votre ou vos macros. Bien évidemment, vous pouvez rajouter à votre projet autant de modules que vous voulez. C'est-à-dire que vous pouvez écrire une macro par module, si vous le souhaitez. Ouvrez MVBA et regardez le menu de gauche : Chaque mot en gras est un projet. Vous pouvez l'explorer au moyen de la petite croix à gauche de chacun : Ici, je n'ai en fait qu'un seul projet, les autres étant propres à l'application et protégés par mot de passe. Vous avez tous le même projet : « VBAProject (Classeur1) ». Si votre classeur a pour nom Salariés, votre projet a pour nom « VBAProject (Salariés) ». Nous allons ajouter un nouveau module qui va vous permettre de coder. rendez-vous dans le menu « Insertion » puis cliquez sur « Module » : 3 Remarquez l'apparition du dossier Module dans votre projet. C'est ici que seront rangés tous vos modules. Nous allons pouvoir commencer à coder. STOOOOP ! Et si j'ai 40 modules ? Je vais avoir 40 fichiers dans mon dossier mais s'ils s'appellent Module1, Module2, Module3... je ne vais jamais m'en sortir ! Exact. Cher Zéro, vous soulevez la question du renommage du module, une démarche assez tordue. Soit, je vais vous expliquer comment renommer un module. Tout d'abord, sélectionnez votre module. Cliquez sur le bouton « Fenêtre Propriétés ( F4 ) » : ça affichera le menu des propriétés du module : Renommez le module comme à vos envies, puis fermez cette petite sous-fenêtre au moyen de la petite croix. Voilà, vous êtes fin prêts au codage. Petite précision tout de même : pour revenir au tableur depuis MVBA, il faut appuyer sur Alt + F11. Codez votre première macro ! Dans toute cette seconde partie, nous allons coder en VBA, je pense que vous l'avez compris. Afin d'obtenir la coloration de mes codes d'exemples, j'ai choisi d'écrire ici mes codes entre des balises de coloration pour VB.NET. C'est un langage proche du VBA par sa syntaxe, et c'est pourquoi je m'en sers afin de colorer mes codes (ce qui est plus agréable à lire). Pour créer une macro, vous pouvez soit faire travailler l'enregistreur de macros, et dans ce cas du code VBA sera généré selon vos désirs, soit la coder à la main. 4 Comme nous sommes sur le Site du Zéro et qu'ici, on est plutôt orienté « code », nous allons... coder. Déclarer sa macro Une macro porte un nom que vous lui donnez. Les espaces et les accents sont interdits. • MAUVAIS = ma première macro. • BIEN = ma_premiere_macro. Chaque macro doit être codée entre les mots-clés Sub et End Sub. Syntaxe Voici sans plus tarder la syntaxe d'une déclaration : Sub nom_de_la_macro () End Sub Dans votre éditeur de code, écrivez seulement la première ligne Sub nom_de_la_macro () (en remplaçant « nom_de_la_macro » par ce que vous voulez, tant que ça respecte les règles énoncées ci-dessus ) et appuyez sur Entrée : End Sub a été généré tout seul ! Par exemple (nom repris du chapitre précédent) : Sub gras_rouge () End Sub Que s'est-il passé ? Retournez à votre tableur, et dessinez un objet auquel vous appliquez votre macro (voir chapitre sur les macros). 5 Que constatons-nous ? Votre macro est reconnue, et ce, sans toucher l'enregistreur ! Les commentaires Dans le code, vous avez la possibilité de placer des commentaires. Ils n'auront aucune influence lors de l'exécution du code et servent simplement à vous repérer. Un commentaire commence par une apostrophe '. Si vous ne vous êtes pas trompés, le commentaire devrait apparaître en vert. Sub ma_macro() 'Ceci est un commentaire. 'Il sert à vous retrouver dans le code. 'On placera le code de la macro ici. :) End Sub Pfiou ! Je crois que vous êtes prêts pour passer au concret. 6 VBA ...... > OK Description de l'interface de développement ...... > OK Organisation du projet ...... > OK Première macro ...... > OK Commentaires ...... > OK C'est bon, vous pouvez passer à la suite ! Le VBA : un langage orienté objet Après un premier chapitre d'introduction au VBA, il est temps de rentrer dans le concret. Si nous résumons, vous savez déclarer une macro et placer un commentaire dans un code. Nous avons même constaté qu'une liaison a été établie entre votre macro et le tableur à "proprement parlé" puisque, sans passer par l'enregistreur de macro, vous pouvez affecter votre bout de code à un objet sur votre quadrillage. Ce chapitre introduit des notions fondamentales pour cette troisième partie du cours. Allez-y à votre rythme, mais ne brulez pas les étapes. Si vous ne comprenez pas tout, même après relectures, passez à la suite. Vous aurez peut-être un « déclic » en pratiquant. Il est vrai que cette partie est fondamentale par la suite donc il est préférable de la maîtriser, ça va de soi. Le fait de passer à autre chose (chapitre suivant) vous permettra peut- être de comprendre puisque les connaissances acquises seront utilisées d'une manière différente. Orienté quoi ? Le VBA est un langage orienté objet. On dira également que vous faites de la Programmation Orientée Objet (POO). Ces mots n'ont probablement aucun sens pour vous, à moins que vous n'ayez déjà fait du C++ ou encore du Java. Nous allons tenter d'étudier le concept en lui-même, puis en suite de l'appliquer à notre problème. Dans la vie courante, vous reconnaissez un objet parce qu'il a un état physique, il est visible et vous pouvez le toucher. Une brosse à dents est un objet, un verre est un objet, un ordinateur en est un également... bref, la liste est longue. L'objet peut être reconnaissable grâce à sa couleur, par exemple, mais vous pouvez aussi effectuer des actions dessus. Nous allons prendre comme exemple votre maison (ou appartement, ne me dites pas que vous habitez dans un bateau... même si ça ne change pas grand-chose). Une maison est caractérisée par ses propriétés : elle a 7 une année de construction, une couleur... mais on peut aussi y faire beaucoup d'action : Nettoyer, Regarder la télé ... on parle alors de méthodes . À partir de ces propriétés et méthodes, vous pouvez imaginer plein de maisons différentes, en faisant varier le nombre de pièces, par exemple. Les propriétés permettent d'identifier la maison, de la caractériser, de la singulariser. Les méthodes forment toutes les actions que l'on peut exécuter à partir de cet objet. Toutes ces maisons ont donc été fabriquées à partir d'un plan. On parle d'une classe. Lorsque vous fabriquez un objet à partir d'une classe, on dit que vous faites une instance de classe. M@teo21 a une belle image pour ceci : imaginez un architecte qui dessine un plan de maison. Le plan correspond ici à ma classe et les maisons aux objets : en effet, à partir uploads/S4/ les-bases-du-langage-vba-pdf.pdf
Documents similaires
-
16
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jui 14, 2021
- Catégorie Law / Droit
- Langue French
- Taille du fichier 1.1277MB