Développez des macros compatibles avec toutes les versions d’Excel (de 1997 à 2
Développez des macros compatibles avec toutes les versions d’Excel (de 1997 à 2010) Excel et VBA Microsoft® ® Mikaël Bidault odes sources sur www.pearson.fr C su s r ww ww Mikaël Bidault Microsoft ® Excel ® & VBA L E P R O G R A M M E U R Pearson Education France a apporté le plus grand soin à la réalisation de ce livre afin de vous fournir une information complète et fiable. Cependant, Pearson Education France n’assume de responsa bilités, ni pour son utilisation, ni pour les contrefaçons de brevets ou atteintes aux droits de tierces personnes qui pourraient résulter de cette utilisation. Les exemples ou les programmes présents dans cet ouvrage sont fournis pour illustrer les descrip tions théoriques. Ils ne sont en aucun cas destinés à une utilisation commerciale ou professionnelle. Pearson Education France ne pourra en aucun cas être tenu pour responsable des préjudices ou dommages de quelque nature que ce soit pouvant résulter de l’utilisation de ces exemples ou programmes. Tous les noms de produits ou marques cités dans ce livre sont des marques déposées par leurs propriétaires respectifs. Publié par Pearson Education France 47 bis, rue des Vinaigriers 75010 PARIS Tél. : 01 72 74 90 00 www.pearson.fr Mise en pages : TyPAO Collaboration éditoriale : Hervé Guyader ISBN : 978-2-7440-4158-7 Copyright © 2010 Pearson Education France Tous droits réservés Aucune représentation ou reproduction, même partielle, autre que celles prévues à l’article L. 122-5 2˚ et 3˚ a) du code de la propriété intellectuelle ne peut être faite sans l’autorisation expresse de Pearson Education France ou, le cas échéant, sans le respect des modalités prévues à l’article L. 122-10 dudit code. Sommaire Introduction. ......................................................... 1 Partie I – Découvrir la programmation Excel.................................................................... 11 1. Notions fondamentales de la programmation orientée objet................................................. 13 2. Premières macros. .......................................... 35 3. Déplacement et sélection dans une macro Excel.............................................................. 63 4. Découvrir Visual Basic Editor....................... 85 Partie II – Programmeren Visual Basic........... 127 5. Développer dans Visual Basic Editor............ 129 6. Variables et constantes. .................................. 173 7. Contrôler les programmes VBA.................... 209 8. Fonctions Excel et VBA................................ 257 9. Manipulation des chaînes de caractères. ........ 275 10. Débogage et gestion des erreurs.................... 293 11. Intégrer des applications VBA dans l’interface d’Excel................................. 317 Partie III – Développer des interfaces utilisateur............................................................ 327 12. Créer des interfaces utilisateur...................... 329 13. Exploiter les propriétés des contrôles ActiveX. ......................................................... 359 14. Maîtriser le comportement des contrôles. ...... 401 Partie IV – Notions avancées de la programmation Excel............................... 437 15. Programmer des événements Excel............... 439 16. Protéger et authentifier des projets VBA....... 451 17. Exemple complet d’application Excel........... 475 Annexe Mots clés pour la manipulation de fichiers et de dossiers........................................................ 535 Index.................................................................... 539 Introduction. ....................................................... 1 VBA 7 : 64 bits vs 32 bits............................... 2 VBA, pour quoi faire ?. ................................... 3 Des programmes............................................... 5 Une application hôte et des projets. .................. 5 Un langage de programmation......................... 6 Un environnement de travail............................. 8 Conventions typographiques. .......................... 9 Codes sources en ligne . .................................. 10 I – Découvrir la programmation Excel 11 1. Notions fondamentales de la programmation orientée objet................................................. 13 Comprendre le concept d’objet. ...................... 14 Objets et collections d’objets............................ 14 Application hôte et modèles d’objets................ 16 Accéder aux objets............................................ 19 Les propriétés. ................................................... 21 Les méthodes..................................................... 27 Les événements. ................................................. 28 Les fonctions..................................................... 29 Le modèle d’objets d’Excel............................ 29 2. Premières macros.......................................... 35 Créer une macro GrasItalique......................... 36 Afficher l’onglet Développeur........................... 37 Démarrer l’enregistrement. ............................... 38 Enregistrer les commandes de la macro........... 40 Exécuter la macro............................................. 40 Structure de la macro........................................ 42 Améliorer la macro........................................... 47 Une autre méthode d’enregistrement.............. 49 Enregistrement.................................................. 50 Structure de la macro........................................ 50 Écrire la macro . .............................................. 51 Exécution de la macro. ...................................... 53 Choisir l’accessibilité des macros. .................. 53 Accessibilité globale ou limitée........................ 53 Classeurs et modèles. ........................................ 54 Le classeur de macros personnel...................... 55 Les macros complémentaires............................ 56 Définir le classeur de stockage lors de l’enregistrement d’une macro........................... 60 Accéder aux macros d’un classeur spécifique.. 60 Table des matières VI Excel et VBA 3. Déplacement et sélection dans une macro Excel................................... 63 Méthodes de sélection dans une feuille Excel............................................................... 64 Clavier. .............................................................. 64 Souris................................................................ 66 Notion de cellule active. .................................... 66 Références relatives et références absolues...... 67 Coder les déplacements effectués lors de l’enregistrement d’une macro.................... 69 Référence absolue aux cellules......................... 69 Référence relative aux cellules. ......................... 78 Référence aux cellules fonction de leur contenu. ................................................. 80 Référence aux plages de cellules nommées. ...... 83 4. Découvrir Visual Basic Editor..................... 85 Accéder à Visual Basic Editor........................ 86 Les outils et les fenêtres de Visual Basic Editor. .................................... 88 L’Explorateur de projet. .................................... 89 L’Explorateur d’objets...................................... 92 La fenêtre UserForm.........................................100 La fenêtre Code.................................................102 La fenêtre Propriétés. ........................................116 Les barres d’outils. ............................................121 Paramétrer Visual Basic Editor....................... 124 II – Programmer en Visual Basic 127 5. Développer dans Visual Basic Editor.......... 129 Structure des programmes Visual Basic. ......... 130 Les modules. ......................................................130 Les procédures..................................................131 Les instructions.................................................133 Les différents types de procédures. ................. 136 Procédures Sub.................................................136 Procédures Function.........................................141 Procédures Property. .........................................143 Des projets bien structurés.............................. 149 Ajouter un module. ............................................149 Supprimer un module........................................151 Créer une procédure. ....................................... 152 Écrire l’instruction de déclaration. ...................152 La boîte de dialogue Ajouter une procédure. ....153 La notion de portée...........................................154 Écriture et mise en forme du code. ....................155 Déplacer une procédure. ...................................161 Appel et sortie d’une procédure. ..................... 162 Appel d’une procédure Sub. ..............................162 Appels de procédures Function et Property......163 Passage d’arguments. ........................................164 Sortie d’une procédure. .....................................166 Sortie d’un programme.....................................167 Exécuter du code. ............................................ 168 Aide à l’écriture de code................................. 169 Vérification automatique de la syntaxe.............169 Complément automatique des instructions.......170 Info express automatique..................................171 6. Variables et constantes................................. 173 Déclarer une variable...................................... 174 Déclaration implicite .......................................174 Déclaration explicite. ........................................175 Types de données des variables ..................... 178 Chaînes de caractères.......................................178 Valeurs numériques...........................................180 Valeurs booléennes. ...........................................183 Dates.................................................................184 Type Variant. ......................................................185 Variables de matrice.........................................185 Variables objet..................................................190 Types de données personnalisés. .......................195 Table des matières VII Constantes. ........................................................197 Validation et conversion des types de données.198 Portée et durée de vie des variables................ 201 Portée de niveau procédure. ..............................201 Portée de niveau module privée........................201 Portée de niveau module publique....................202 Variables statiques............................................203 Traitement interapplications à l’aide de variables objet............................................ 203 7. Contrôler les programmes VBA.................. 209 Répéter une série d’instructions : les boucles.210 La boucle While...Wend. ...................................210 La boucle Do...Loop.........................................215 La boucle For...Next. .........................................218 La boucle For Each...Next. ................................224 Utiliser des instructions conditionnelles......... 228 La structure de contrôle If...Then...Else...........228 La structure de contrôle Select Case. ................233 Définir l’instruction suivante avec GoTo........ 234 Interagir avec l’utilisateur via des boîtes de dialogue...................................................... 235 La fonction InputBox........................................235 La méthode InputBox. .......................................239 La fonction MsgBox.........................................241 Affichage de boîtes de dialogue Excel. ..............246 Utiliser les opérateurs logiques. ...................... 252 Trier des données............................................ 253 8. Fonctions Excel et VBA................................ 257 Utiliser les fonctions Excel dans VBA. ........... 258 Créer des fonctions Excel personnalisées....... 258 Intégrer une fonction via l’Explorateur d’objets. ........................................................... 260 Insérer une fonction VBA dans votre code........260 Insérer une fonction Excel dans votre code......261 Recommandations pour l’écriture de fonctions Excel............................................................... 263 Les limites de la cellule. ....................................263 Principales fonctions VBA. ............................. 264 9. Manipulation des chaînes de caractères..... 275 Modifier des chaînes de caractères................. 276 Concaténer des chaînes....................................276 Insérer des caractères non accessibles au clavier 278 Répéter une série de caractères........................280 Supprimer les espaces superflus d’une chaîne. .280 Extraire une partie d’une chaîne......................281 Effectuer des remplacements au sein d’une chaîne.........................................282 Modifier la casse des chaînes de caractères.....283 Comparer des chaînes de caractères............... 283 Rechercher dans les chaînes de caractères. ..... 286 Rechercher une chaîne dans une chaîne...........286 Rechercher une chaîne dans une variable de matrice. .........................................................289 10. Débogage et gestion des erreurs. ................. 293 Les étapes et les outils du débogage............... 294 Test du projet.....................................................295 Exécuter pas à pas............................................297 La fenêtre Variables locales..............................298 Les points d’arrêt..............................................300 Modifier l’ordre d’exécution des instructions...301 La fenêtre Exécution.........................................301 Les espions........................................................302 La pile des appels . ............................................304 Exemple de débogage..................................... 305 Recherche du bogue..........................................307 Résolution du bogue. .........................................308 Gestion des erreurs et des exceptions............. 312 Exemple de gestion d’erreur........................... 313 VIII Excel et VBA 11. Intégrer des applications VBA dans l’interface d’Excel. ........................................................... 317 Affecter une macro à un raccourci clavier...... 318 Personnaliser le ruban et la barre d’outils Accès rapide. ................................................... 319 Personnaliser les barres d’outils dans les versions antérieures à Excel 2007..... 321 Personnaliser les menus dans les versions antérieures à Excel 2007................................. 323 Affecter une macro à un objet. ........................ 325 III – Développer des interfaces utilisateur 327 12. Créer des interfaces utilisateur..................................................... 329 Les phases de développement de feuilles....... 331 Créer une feuille. ............................................. 331 Les contrôles de la boîte à outils. .................... 333 Outil Sélection. ..................................................334 Contrôle Label..................................................334 Contrôle TextBox..............................................334 Contrôle ComboBox.........................................335 Contrôle Frame.................................................335 Contrôle ListBox. ..............................................336 Contrôle CheckBox. ..........................................336 Contrôle OptionButton. .....................................337 Contrôle ToggleButton. .....................................338 Contrôle CommandButton................................338 Contrôle TabStrip..............................................338 Contrôle MultiPage...........................................339 Contrôle ScrollBar............................................340 Contrôle SpinButton.........................................340 Placer des contrôles sur une feuille. ................ 341 Copier-coller des contrôles. ..............................344 Sélectionner plusieurs contrôles.......................345 Supprimer des contrôles. uploads/s1/ excel-vba.pdf
Documents similaires










-
47
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Dec 01, 2022
- Catégorie Administration
- Langue French
- Taille du fichier 8.4573MB