Author
abdelhamid-ferchichi
View
645
Download
12
Embed Size (px)
Microsoft
EXCEL 2003
VBACurtis Frye Wayne S. Freeze et Felicia K. Buckingham Adapt de langlais par : Vronique Campillo Vronique Warion et Emmanuelle Burr
Les programmes figurant dans ce livre, et ventuellement sur la disquette ou le CD-ROM daccompagnement, sont fournis gracieusement sous forme de code source, titre dillustration. Ils sont fournis en ltat sans garantie aucune quant leur fonctionnement une fois compils, assembls ou interprts dans le cadre dune utilisation professionnelle ou commerciale. Ils peuvent ncessiter des adaptations et modifications dpendant de la configuration utilise. Microsoft Press ne pourra en aucun cas tre tenu responsable des prjudices ou dommages de quelque nature que ce soit pouvant rsulter de lutilisation de ces programmes. Tous les efforts ont t faits pour fournir dans ce livre une information complte et exacte la date de la parution. Nanmoins, Microsoft Press nassume de responsabilits ni pour son utilisation, ni pour les contrefaons de brevets ou atteintes aux droits de tierces personnes qui pourraient rsulter de cette utilisation. Microsoft Internet Explorer, Windows et Excel sont soit des marques dposes, soit des marques de Microsoft Corporation aux tats-Unis ou/et dautres pays. Copyright 2005 by Microsoft Corporation. Original English language edition Copyright 2004 by Curtis Frye, Wayne S. Freeze and Felicia K. Buckingham. All rights published by arrangement with the original publisher, Microsoft Press, a division of Microsoft Corporation, Redmond, Washington, U.S.A. Titre U.S. : MICROSOFT OFFICE EXCEL 2003 PROGRAMMING, INSIDE OUT ISBN U.S. : 0 7356 1985 9
Toute reprsentation ou reproduction intgrale ou partielle faite sans le consentement de lauteur ou de ses ayants droit ou ayants cause est illicite selon le Code de la proprit intellectuelle (Art L 122-4) et constitue une contrefaon rprime par le Code pnal. Seules sont autorises (Art L 122-5) les copies ou reproductions strictement rserves lusage priv du copiste et non destines une utilisation collective, ainsi que les analyses et courtes citations justifies par le caractre critique, pdagogique ou dinformation de luvre laquelle elles sont incorpores, sous rserve, toutefois, du respect des dispositions des articles L 122-10 L 122-12 du mme Code, relatives la reproduction par reprographie.
dition et diffusion : Dunod Distribution : Interforum Traduction : Vronique Campillo, Vronique Warion, Emmanuelle Burr Mise en page : IID ISBN : 978 2 10 055217 7
Sommaire propos de ce livre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .i Exigences dquipement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .i Support technique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .i Conventions et signaltique de ce livre . . . . . . . . . . . . . . . . . . . . . .iii Conventions de texte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii Conventions visuelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii Partie 1
PrliminairesChapitre 1
Les nouveauts dExcel 2003
3
Utilisation des fonctions statistiques optimises . . . . . . . . . . . . 3 Cration de documents intelligents . . . . . . . . . . . . . . . . . . . . . . 6 Cration despaces de travail intelligents . . . . . . . . . . . . . . . . . . 7 Mise en uvre de la gestion des droits relatifs linformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Comparaison de classeurs cte cte . . . . . . . . . . . . . . . . . . . 8 Utilisation du volet Recherche . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Exploitation des fonctionnalits XML tendues . . . . . . . . . . . . . 10 Crer des listes Excel . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Mapper des donnes Excel avec des schmas XML . . . . . 12 Publier des feuilles de calcul avec les Complments Ofce 2003 . . . . . . . . . . . . . . . . . . . . . 13 Chapitre 2
Tour dhorizon
15
Classeurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Feuilles de calcul . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Cellules et plages. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Linterface Excel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Formules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 Partie 2
Visual Basic pour ApplicationsChapitre 3
Exploration de Visual Basic pour Applications
29
Tour dhorizon de la programmation oriente objet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Proprits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 i
Sommaire Mthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 vnements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Collections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Le travail avec les macros. . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Enregistrer et afcher des macros . . . . . . . . . . . . . . . . . . 33 Excuter une macro . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Dboguer une macro . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Mettre en uvre la scurit des macros et des signatures numriques . . . . . . . . . . . . . . . . . . . . . 40 Chapitre 4
Dmarrage de la programmation VBA
47
Introduction Visual Basic Editor . . . . . . . . . . . . . . . . . . . . . . 47 Ouvrir Visual Basic Editor . . . . . . . . . . . . . . . . . . . . . . . . 47 Tour dhorizon de Visual Basic Editor . . . . . . . . . . . . . . . . 48 Personnaliser Visual Basic Editor . . . . . . . . . . . . . . . . . . 55 Gestion des fentres Code . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 Grer les fentres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Ajouter du code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Notes sur le style de programmation et la lisibilit du code . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Dveloppement de projets avec lExplorateur de projets . . . . . . 62 Crer des modules VBA . . . . . . . . . . . . . . . . . . . . . . . . . 62 Supprimer des modules VBA . . . . . . . . . . . . . . . . . . . . . . 63 Copier des modules entre projets . . . . . . . . . . . . . . . . . . 64 Dclaration des variables, constantes et types de donnes . . . . 64 Dclarer des variables . . . . . . . . . . . . . . . . . . . . . . . . . . 65 Dnir les types de donnes . . . . . . . . . . . . . . . . . . . . . . 65 Dnir les constantes. . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Grer les chanes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 Grer les dates et les heures . . . . . . . . . . . . . . . . . . . . . 67 Grer les variables Variant et convertir des types de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . 68 Porte et dure de vie des variables . . . . . . . . . . . . . . . . 69 Assignation de valeurs aux variables . . . . . . . . . . . . . . . . . . . . 71 Tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Crer un tableau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 Crer des tableaux multidimensionnels . . . . . . . . . . . . . . 73 Cration de tableaux dynamiques . . . . . . . . . . . . . . . . . . . . . . 73 criture lcran et acceptation des entres utilisateur . . . . . . 74 Crer une bote de message . . . . . . . . . . . . . . . . . . . . . . 75 Crer une bote de saisie . . . . . . . . . . . . . . . . . . . . . . . . 79 Dnition de variables objet . . . . . . . . . . . . . . . . . . . . . . . . . . 81 Cration de types de donnes personnaliss . . . . . . . . . . . . . . 81 Commande WithEnd With . . . . . . . . . . . . . . . . . . . . . . 82 Contrle de la progression du programme . . . . . . . . . . . . . . . . 82 Instructions de slection. . . . . . . . . . . . . . . . . . . . . . . . . 82
ii
Sommaire Boucles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 Instruction GoTo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Gestion des erreurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 Chapitre 5
Cration de procdures Sub et Function
95
Dnition de procdures Sub . . . . . . . . . . . . . . . . . . . . . . . . . 95 Dnir la porte dune procdure Sub . . . . . . . . . . . . . . 101 Excuter une procdure Sub partir dune autre procdure . . . . . . . . . . . . . . . . . . . . . . . . . 103 Conserver les valeurs entre les appels de procdure . . . 108 Dnition de procdures Function . . . . . . . . . . . . . . . . . . . . . 109 Crer une procdure Function . . . . . . . . . . . . . . . . . . . . 110 Excuter des procdures Function . . . . . . . . . . . . . . . . . 111 Passer des arguments aux procdures. . . . . . . . . . . . . . 112 Passer des arguments nomms . . . . . . . . . . . . . . . . . . 114 Organisez votre russite . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 Partie 3
Le modle dobjet ExcelChapitre 6
Lobjet Application
119
Introduction lobjet Application . . . . . . . . . . . . . . . . . . . . . . 120 Proprits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121 Mthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 Chapitre 7
Classeurs et feuilles de calcul
143
La collection Workbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143 Crer de nouveaux classeurs . . . . . . . . . . . . . . . . . . . . 143 Ouvrir des classeurs. . . . . . . . . . . . . . . . . . . . . . . . . . . 144 Enregistrer des classeurs . . . . . . . . . . . . . . . . . . . . . . . 149 Proprits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 Mthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160 Imprimer et prvisualiser les classeurs . . . . . . . . . . . . . 162 Les collections Sheets et Worksheets . . . . . . . . . . . . . . . . . . 164 Proprits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 Mthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 Mthodes des feuilles de calcul . . . . . . . . . . . . . . . . . . 172 Chapitre 8
Plages et cellules
179
Manipulations de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179 Localiser la plage active . . . . . . . . . . . . . . . . . . . . . . . . 179 Slectionner une plage . . . . . . . . . . . . . . . . . . . . . . . . . 180
iii
Sommaire Rfrencement des plages . . . . . . . . . . . . . . . . . . . . . . . . . . 183 Rfrencer les plages de la feuille de calcul active . . . . . 184 Rfrencer les plages dune feuille de calcul inactive . . . 185 Rfrencer les cellules dune plage . . . . . . . . . . . . . . . . 185 Rfrencer des cellules avec la proprit Offset . . . . . . . 185 Dnir une plage avec la proprit Cells. . . . . . . . . . . . . 189 Rfrencer des colonnes et des lignes. . . . . . . . . . . . . . 190 Rfrencer des groupes de cellules non contigus . . . . . 190 Manipulation de groupes de cellules . . . . . . . . . . . . . . . . . . . 190 Dimensionner les cellules par programmation . . . . . . . . 190 Lier de deux plages . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 Dtecter les cellules vides . . . . . . . . . . . . . . . . . . . . . . 192 Plages nommes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 Dnir une plage nomme . . . . . . . . . . . . . . . . . . . . . . 194 Styles de notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196 Noms de plages rservs . . . . . . . . . . . . . . . . . . . . . . . 199 Copier des donnes entre des plages et des tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 Validation des donnes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 Partie 4
Fonctions VBA avancesChapitre 9
Manipulation des donnes avec VBA
211
Texte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211 Dterminer si la valeur dune cellule est du texte . . . . . . 212 Prparer les donnes de chane pour le traitement . . . . . 214 Dterminer le nombre de caractres dune chane . . . . . 215 Concatner le texte de plusieurs cellules ou variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217 Retourner le premier ou le dernier caractre dune chane . . . . . . . . . . . . . . . . . . . . . . . . . 219 Retourner des caractres arbitraires dune chane . . . . . 221 Retrouver une chane au sein dune autre chane . . . . . . 221 Nombres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225 Analyse des donnes . . . . . . . . . . . . . . . . . . . . . . . . . . 225 Calculs nanciers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 Dates et heures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 Numros de srie des dates et des heures . . . . . . . . . . 233 Fonctions de date et dheure. . . . . . . . . . . . . . . . . . . . . 234 Chapitre 10
Mise en forme dobjets Excel
239
Constantes et palette de couleurs Excel . . . . . . . . . . . . . . . . 239 Palette de couleur Excel standard . . . . . . . . . . . . . . . . . 244 La palette de couleurs Excel et le web . . . . . . . . . . . . . . 247 iv
Sommaire lments de la feuille de calcul . . . . . . . . . . . . . . . . . . . . . . . 250 Polices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252 Cellules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 Bordures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 Chapitre 11
Cration de macros complmentaires et de complments COM
259
Prsentation des macros complmentaires . . . . . . . . . . . . . . 259 Bote de dialogue Macro complmentaire. . . . . . . . . . . . . . . . 260 Installer une macro complmentaire . . . . . . . . . . . . . . . 261 Dcharger une macro complmentaire . . . . . . . . . . . . . . 261 Cration de macros complmentaires Excel . . . . . . . . . . . . . . 262 Crer une macro complmentaire . . . . . . . . . . . . . . . . . 262 Enregistrer la macro complmentaire . . . . . . . . . . . . . . . 263 Installer la macro complmentaire . . . . . . . . . . . . . . . . . 263 Collection AddIns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 Tour dhorizon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264 Lobjet AddIn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265 Cration de complments dautomatisation et COM . . . . . . . . 267 Interface IDTExtensibility2 . . . . . . . . . . . . . . . . . . . . . . . 268 Cls du registre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 Construction dun complment dautomatisation avec Visual Basic 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Concevoir le complment . . . . . . . . . . . . . . . . . . . . . . . 271 Entres du registre . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 Gnration dun complment COM avec Visual Basic .NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277 Excuter lassistant du complment partag . . . . . . . . . 277 Modier le modle . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279 Installer le complment . . . . . . . . . . . . . . . . . . . . . . . . 281 Chapitre 12
vnements
285
Activation et dsactivation des vnements . . . . . . . . . . . . . . 286 vnements Workbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288 vnement Open . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289 vnement Activate . . . . . . . . . . . . . . . . . . . . . . . . . . . 290 vnement Newsheet . . . . . . . . . . . . . . . . . . . . . . . . . . 291 vnement BeforeSave . . . . . . . . . . . . . . . . . . . . . . . . . 291 vnement Deactivate . . . . . . . . . . . . . . . . . . . . . . . . . 292 vnement BeforePrint . . . . . . . . . . . . . . . . . . . . . . . . . 292 vnement BeforeClose . . . . . . . . . . . . . . . . . . . . . . . . 293 vnements Worksheet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294 vnement Change. . . . . . . . . . . . . . . . . . . . . . . . . . . . 295 vnement SelectionChange . . . . . . . . . . . . . . . . . . . . . 297 vnement BeforeRightClick . . . . . . . . . . . . . . . . . . . . . 297 v
Sommaire vnements Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298 Afner la surveillance de lvnement Application . . . . . . 299 Dtecter si un classeur est ouvert . . . . . . . . . . . . . . . . . 300 Chapitre 13
Manipulation des chiers
303
Localisation des chiers externes . . . . . . . . . . . . . . . . . . . . . 303 Retourner tous les chiers . . . . . . . . . . . . . . . . . . . . . . 304 Limiter la recherche . . . . . . . . . . . . . . . . . . . . . . . . . . . 307 Retrouver des chiers avec la bote de dialogue FileDialog. . . . . . . . . . . . . . . . . . . . . . . . . . 314 criture dans un chier externe . . . . . . . . . . . . . . . . . . . . . . . 317 Lecture dans un chier externe . . . . . . . . . . . . . . . . . . . . . . . 319 Recherche dune valeur dans un chier . . . . . . . . . . . . . . . . . 320 Chapitre 14
Dveloppement de modules de classes
323
Quest-ce quun objet ?. . . . . . . . . . . . . . . . . . . . . . . . . 323 Quest-ce quune classe ?. . . . . . . . . . . . . . . . . . . . . . . 323 Que sont les proprits ? . . . . . . . . . . . . . . . . . . . . . . . 324 Que sont les mthodes ? . . . . . . . . . . . . . . . . . . . . . . . 324 Que sont les vnements ? . . . . . . . . . . . . . . . . . . . . . 324 Introduction aux modules de classe. . . . . . . . . . . . . . . . . . . . 325 Accder aux objets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325 Dclarer des objets . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 Objets et Nothing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326 Objets avec plusieurs variables objet . . . . . . . . . . . . . . . 327 Proprits, mthodes et vnements. . . . . . . . . . . . . . . . . . . 328 Proprits, mthodes et vnements : Public ou Private ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 Proprits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 Mthodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 vnements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329 Construction dune classe . . . . . . . . . . . . . . . . . . . . . . . . . . 329 Crer un module de classe . . . . . . . . . . . . . . . . . . . . . . 329 Dnir les proprits simples . . . . . . . . . . . . . . . . . . . . 330 Dnir les routines de proprit . . . . . . . . . . . . . . . . . . 331 Dnir des mthodes . . . . . . . . . . . . . . . . . . . . . . . . . . 333 Dnir des vnements . . . . . . . . . . . . . . . . . . . . . . . . 334 Dnir des variables, sous-routines et fonctions prives . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 vnements spciaux pour les classes . . . . . . . . . . . . . 335 Rsoudre des rfrences . . . . . . . . . . . . . . . . . . . . . . . 336 Conception pratique dune classe . . . . . . . . . . . . . . . . . . . . . 336 Une classe simple . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336 tendre une classe simple . . . . . . . . . . . . . . . . . . . . . . 337
vi
Sommaire Une classe de collection . . . . . . . . . . . . . . . . . . . . . . . . 338 Une classe avec des rgles de mtier . . . . . . . . . . . . . . 341 Partie 5
Manipulation des objets ExcelChapitre 15
Graphiques
345
Tour dhorizon des graphiques . . . . . . . . . . . . . . . . . . . . . . . . 345 Crer des graphiques incorpors ou des feuilles de graphique . . . . . . . . . . . . . . . . . . . . . . . 346 Dnition du modle d'objet Chart. . . . . . . . . . . . . . . . . 350 Manipulation des graphiques . . . . . . . . . . . . . . . . . . . . . . . . 351 Activer un graphique . . . . . . . . . . . . . . . . . . . . . . . . . . . 352 Dsactiver un graphique . . . . . . . . . . . . . . . . . . . . . . . . 354 Modier une srie de donnes . . . . . . . . . . . . . . . . . . . 355 Modier un graphique pour utiliser les donnes dun tableau . . . . . . . . . . . . . . . . . . . . . . . 358 Dnir les tiquettes du graphique . . . . . . . . . . . . . . . . 359 Mettre un graphique en forme . . . . . . . . . . . . . . . . . . . . 361 Modier tous les graphiques dun classeur . . . . . . . . . . 363 Imprimer des graphiques . . . . . . . . . . . . . . . . . . . . . . . 363 Rexions sur la programmation des graphiques . . . . . . . . . . 364 Chapitre 16
Tableaux et graphiques croiss dynamiques
367
Tableaux et graphiques croiss dynamiques . . . . . . . . . . . . . . 367 Introduction aux tableaux croiss dynamiques . . . . . . . . 367 Crer un tableau crois dynamique avec lAssistant Tableau et graphique croiss dynamiques . . . 370 Introduction aux graphiques croiss dynamiques . . . . . . 371 Crer un graphique crois dynamique avec lAssistant Tableau et graphique croiss dynamiques . . . 372 Bases de donnes OLAP. . . . . . . . . . . . . . . . . . . . . . . . 373 Objets des tableaux croiss dynamiques . . . . . . . . . . . . . . . . 374 Collection PivotTables . . . . . . . . . . . . . . . . . . . . . . . . . . 375 Objet PivotTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376 Collection PivotCaches . . . . . . . . . . . . . . . . . . . . . . . . . 378 Objet PivotCache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 379 Objets PivotField . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 Objet PivotItem. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383 Programmation de tableaux croiss dynamiques. . . . . . . . . . . 384 Crer un tableau crois dynamique . . . . . . . . . . . . . . . . 384 Crer un graphique crois dynamique . . . . . . . . . . . . . . 386 Manipulation par programmation des tableaux croiss dynamiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386 Faire pivoter un tableau crois dynamique . . . . . . . . . . . 387 vii
Sommaire Rinitialiser la position dorigine . . . . . . . . . . . . . . . . . . 389 Enregistrer et restaurer des positions . . . . . . . . . . . . . . 389 Chapitre 17
Barres de commandes
393
Identication des diffrentes parties du systme de menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393 Collection CommandBars . . . . . . . . . . . . . . . . . . . . . . . 394 Objets CommandBar. . . . . . . . . . . . . . . . . . . . . . . . . . . 396 Lister les objets CommandBar. . . . . . . . . . . . . . . . . . . . 398 Ajouter une barre de commandes ottante . . . . . . . . . . . 399 Supprimer une barre de commandes . . . . . . . . . . . . . . . 400 Contrles des barres de commandes. . . . . . . . . . . . . . . . . . . 400 Collection CommandBarControls . . . . . . . . . . . . . . . . . . 400 Objet CommandBarControl . . . . . . . . . . . . . . . . . . . . . . 402 Contrles de boutons . . . . . . . . . . . . . . . . . . . . . . . . . . 405 Crer des barres d'outils . . . . . . . . . . . . . . . . . . . . . . . 406 Contrles de zone de liste modiable . . . . . . . . . . . . . . 407 Utiliser une zone de liste modiable . . . . . . . . . . . . . . . 408 Contrles de menu contextuel . . . . . . . . . . . . . . . . . . . . 409 Afcher un menu contextuel . . . . . . . . . . . . . . . . . . . . . 409 Ajouter des lments un menu existant. . . . . . . . . . . . 411 Chapitre 18
Personnalisation des botes de dialogue
413
Afchage des botes de dialogue existantes . . . . . . . . . . . . . . 414 Modication des botes de dialogue existantes. . . . . . . . . . . . 418 Explorer la collection Dialogs. . . . . . . . . . . . . . . . . . . . . 419 Passer des arguments aux botes de dialogue existantes . . . . . . . . . . . . . . . . . . . . . . . . . 423 Planication avec des botes de dialogue . . . . . . . . . . . . . . . . 424 Chapitre 19
Cration de feuilles UserForm
425
Cration dune feuille UserForm . . . . . . . . . . . . . . . . . . . . . . 425 Ajouter un objet UserForm. . . . . . . . . . . . . . . . . . . . . . . 425 Concevoir un objet UserForm. . . . . . . . . . . . . . . . . . . . . 426 Modier un objet UserForm . . . . . . . . . . . . . . . . . . . . . . 427 Proprits dun objet UserForm . . . . . . . . . . . . . . . . . . . 428 Afcher un objet UserForm . . . . . . . . . . . . . . . . . . . . . . 429 Contrles UserForm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431 Programmer les contrles . . . . . . . . . . . . . . . . . . . . . . . 431 Proprits, mthodes et vnements. . . . . . . . . . . . . . . 432 Contrle Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435 Contrle CommandButton . . . . . . . . . . . . . . . . . . . . . . . 435 Contrle TextBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436 Contrle CheckBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437 viii
Sommaire Contrle Contrle Contrle Contrle Contrle Contrle Contrle Contrle Contrle Contrle Contrle Chapitre 20 ToggleButton. . . . . . . . . . . . . . . . . . . . . . . . . . 438 SpinButton . . . . . . . . . . . . . . . . . . . . . . . . . . . 438 Frame. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439 OptionButton . . . . . . . . . . . . . . . . . . . . . . . . . 440 Image. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441 ScrollBar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442 ListBox. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442 ComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . 445 RefEdit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446 TabStrip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446 Multipage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
Cration de feuilles UserForm avances
449
Rcupration de linformation . . . . . . . . . . . . . . . . . . . . . . . . 449 Tour dhorizon de lapplication . . . . . . . . . . . . . . . . . . . . 449 Concevoir une feuille . . . . . . . . . . . . . . . . . . . . . . . . . . 450 Afcher les donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . 453 Parcourir la feuille de calcul . . . . . . . . . . . . . . . . . . . . . 456 Modier les donnes . . . . . . . . . . . . . . . . . . . . . . . . . . 458 Ajouter des donnes. . . . . . . . . . . . . . . . . . . . . . . . . . . 460 Valider les donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . 460 Afcher la feuille UserForm . . . . . . . . . . . . . . . . . . . . . . 462 Conception dun assistant plusieurs tapes . . . . . . . . . . . . 463 Tour dhorizon de lapplication . . . . . . . . . . . . . . . . . . . . 463 Grer les menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464 Construire la feuille UserForm . . . . . . . . . . . . . . . . . . . . 466 Parcourir les pages. . . . . . . . . . . . . . . . . . . . . . . . . . . . 467 Collecter les options de lassistant . . . . . . . . . . . . . . . . 469 Synthtiser les options . . . . . . . . . . . . . . . . . . . . . . . . . 472 Excuter lassistant . . . . . . . . . . . . . . . . . . . . . . . . . . . 473 Partie 6
Excel et le monde extrieur : une collaboration simplieChapitre 21
Excel et les autres applications Ofce
477
Dmarrage dune autre application . . . . . . . . . . . . . . . . . . . . 477 Activation dune autre application . . . . . . . . . . . . . . . . . . . . . 481 Liaisons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 481 Liaison dynamique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482 Liaison statique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484 Interaction avec dautres applications Ofce. . . . . . . . . . . . . . 487 Ouvrir un document dans Word . . . . . . . . . . . . . . . . . . . 490 Accder un document Word actif. . . . . . . . . . . . . . . . . 492 ix
Sommaire Crer un nouveau document Word . . . . . . . . . . . . . . . . . 493 Contrler Excel partir dautres applications Ofce . . . . 495 Conjugaison des talents . . . . . . . . . . . . . . . . . . . . . . . . . . . . 497 Chapitre 22
Excel et SQL
499
Comparaison des tableurs et des bases de donnes . . . . . . . 499 Concepts essentiels des bases de donnes. . . . . . . . . . 500 Cls de base de donnes . . . . . . . . . . . . . . . . . . . . . . . 501 Accder aux bases de donnes partir dExcel . . . . . . . 502 Manipulation des bases de donnes avec SQL . . . . . . . . . . . . 503 Linstruction Select. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504 Instructions Select simples . . . . . . . . . . . . . . . . . . . . . . 504 Extraire des lignes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505 Trier les lignes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 508 Utilisation de plusieurs tables . . . . . . . . . . . . . . . . . . . . 508 Fonctions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510 Linstruction Insert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510 Utiliser linstruction Insert. . . . . . . . . . . . . . . . . . . . . . . 511 Linstruction Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 511 Linstruction Delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512 Chapitre 23
Introduction ADO
515
Le modle d'objet ADO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515 Utiliser le modle d'objet ADO. . . . . . . . . . . . . . . . . . . . 516 Lobjet Connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517 Principales proprits et mthodes de lobjet Connection . . . . . . . . . . . . . . . . . . . . . . . . . . 517 Se connecter diffrents systmes de gestion de base de donnes . . . . . . . . . . . . . . . . . . 519 Utiliser la collection Errors . . . . . . . . . . . . . . . . . . . . . . 520 Utiliser lobjet Error. . . . . . . . . . . . . . . . . . . . . . . . . . . . 521 Lobjet Command . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521 Principales proprits et mthodes de lobjet Command . 522 Utiliser la collection Parameters . . . . . . . . . . . . . . . . . . 523 Utiliser lobjet Parameter . . . . . . . . . . . . . . . . . . . . . . . 524 Lobjet Recordset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525 Principales proprits et mthodes de lobjet Recordset . 525 Utiliser la collection Fields . . . . . . . . . . . . . . . . . . . . . . 529 Utiliser lobjet Field. . . . . . . . . . . . . . . . . . . . . . . . . . . . 529 Chapitre 24
Programme Excel Query
531
Tour dhorizon du programme Excel Query . . . . . . . . . . . 531 Congurer le projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532 Initialiser le programme . . . . . . . . . . . . . . . . . . . . . . . . 533 x
Sommaire Terminer le programme . . . . . . . . . . . . . . . . . . . . . . . . . 535 Connexion une base de donnes . . . . . . . . . . . . . . . . . . . . 535 Initialiser la feuille DBInfo . . . . . . . . . . . . . . . . . . . . . . . 537 Changer les fournisseurs de la base de donnes . . . . . . 538 Slectionner lauthentication Windows . . . . . . . . . . . . . 538 Enregistrer les informations . . . . . . . . . . . . . . . . . . . . . 539 dition dune requte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539 Excution dune requte . . . . . . . . . . . . . . . . . . . . . . . . . . . . 542 Rcuprer les informations . . . . . . . . . . . . . . . . . . . . . . 542 Construire une chane de connexion . . . . . . . . . . . . . . . 543 Rcuprer la requte . . . . . . . . . . . . . . . . . . . . . . . . . . 546 Excuter une requte . . . . . . . . . . . . . . . . . . . . . . . . . . 546 Copier des lignes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 548 Utilisation du programme Excel Query . . . . . . . . . . . . . . . . . . 550 Congurer les informations de connexion . . . . . . . . . . . . 550 Saisir une requte . . . . . . . . . . . . . . . . . . . . . . . . . . . . 550 Excuter la requte . . . . . . . . . . . . . . . . . . . . . . . . . . . 551 Chapitre 25
Excel et le web
553
HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554 Enregistrer une feuille de calcul en tant que page web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 554 Publier une feuille de calcul sur le web. . . . . . . . . . . . . . 557 Des pages web interactives. . . . . . . . . . . . . . . . . . . . . . 560 Exploitation de l'Internet comme source de donnes . . . . . . . 562 Ouvrir des pages web en tant que classeurs . . . . . . . . . 563 Utiliser les requtes Web . . . . . . . . . . . . . . . . . . . . . . . 564 Analyser les pages web la recherche dinformations spciques . . . . . . . . . . . . . . . . . . . . . . 567 Exploitation de l'Internet pour publier des rsultats . . . . . . . . 568 Congurer un serveur web. . . . . . . . . . . . . . . . . . . . . . . 568 Enregistrer des feuilles de calcul en tant que pages web . . . . . . . . . . . . . . . . . . . . . . . . . 569 Ajouter linteractivit avec les composants Web . . . . . . . 570 Communiquer avec un serveur web . . . . . . . . . . . . . . . . 572 Exploitation des solutions Internet avec Excel. . . . . . . . . . . . . 573 Chapitre 26
Excel et XML
575
Introduction aux listes de donnes . . . . . . . . . . . . . . . . . . . . 575 Crer des listes de donnes par programmation. . . . . . . 577 Cration de schmas XML . . . . . . . . . . . . . . . . . . . . . . . . . . 582 Cration de chiers de donnes XML . . . . . . . . . . . . . . . . . . . 585 Ajout manuel de XML un classeur . . . . . . . . . . . . . . . . . . . . 587 Importer manuellement des donnes XML . . . . . . . . . . . 589 Ajout de XML une feuille de calcul par programmation . . . . . 590
xi
Sommaire Mapper un schma sur une feuille de calcul par programmation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 590 Mapper des lments de schma sur des cellules avec XPath. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594
Index
601
xii
propos de ce livreLes exemples ayant servi la ralisation de ce livre ont t publis en ligne sur le site web de Dunod, que vous trouverez ladresse www.dunod.fr. Lancez une recherche sur le titre du prsent ouvrage (Excel 2003 VBA) pour accder ces contenus.
Exigences dquipementVoici les exigences minimales dquipement informatique pour excuter les exercices de ce livre : Microsoft Windows XP ou version ultrieure, ou Windows 2000 Professio
nal avec le service pack 3 ou version ultrieure Processeur 266 MHz ou plus, compatible Pentium RAM 64 Mo (mgaoctets) Lecteur de CD-ROM 8X ou vitesse suprieure Carte son et haut-parleurs compatibles Microsoft Windows Microsoft Internet Explorer 5.01 ou version ultrieure Souris Microsoft ou autre priphrique de pointage compatible
Remarque Ces exigences sont des minima. Pour exploiter certains complments mis disposition sur le site web en accompagnement de ce livre, vous devrez pouvoir disposer dun matriel plus performant. Prenez connaissance des pr-requis indiqus pour chaque complment ou outil dans la page de tlchargement.
Support techniqueMalgr tous les soins apports la ralisation de cet ouvrage et de son contenu daccompagnement, il se peut que des erreurs nous aient chappes et nous vous invitons nous en faire part (en anglais) ladresse www.microsoft.com/mspress/ support/. Pour vous relier directement la Base de connaissances Microsoft an dy poser une question prcise, rendez-vous sur le site www.microsoft.com/mspress/support/search.asp. Pour de plus amples informations concernant Windows XP, consultez le Support technique Microsoft sur le web ladresse support.microsoft.com/.
i
Conventions et signaltique de ce livreDans ce livre, nous avons adopt un certain nombre de conventions de texte et de mise en forme destines faciliter la prise de connaissance des informations quil contient.
Conventions de texteConvention SignicationCommandes de menu abrges Pour des raisons pratiques, ce livre dcrit les procdures de manire abrge. Par exemple, Cliquez sur Outils, Suivi des modications, Afcher les modications signie que vous devez cliquer sur le menu Outils, puis pointer sur Suivi des modications et cliquer sur la commande Afcher les modications. Caractres gras Capitalisation Les caractres gras sont employs pour indiquer le texte saisir au clavier. Les premires lettres des noms de menus, botes de dialogue, options et commandes sont en majuscules. Exemple : la bote de dialogue Enregistrer sous. Les italiques sont utiliss pour les termes nouveaux. Les raccourcis clavier sont indiqus par un signe plus (+) sparant deux noms de touches. Par exemple, CTRL+ALT+SUPPR signie que vous devez appuyer simultanment sur les touches CTRL, ALT et SUPPR.
Caractres en italique Signe plus (+) dans le texte
Conventions visuellesAu QuotidienCet encadr vous donne un exemple du type de contenu que vous serez susceptible dy rencontrer la lecture de cet ouvrage. Nous vous livrons ici des informations approfondies sur ce qui se passe au niveau du logiciel, comment fonctionne une caractristique et ce quelle fait. Vous y trouverez des astuces et des solutions pratiques pour grer les problmes logiciels.
iii
Microsoft Excel 2003 VBA Astuce Les astuces contiennent des informations utiles, permettant de gagner du temps, ou des procdures alternatives lies la tche dcrite par ailleurs.
DpannageCet encadr vous donne un exemple type de dpannage. Recherchez ces encadrs pour trouver des solutions des problmes couramment rencontrs. Ils sont placs proximit des descriptions ou procdures susceptibles de ncessiter un dpannage.
Des rfrences croises vous renvoient dautres parties du livre pour des informations supplmentaires concernant les sujets abords.
Attention Ces rubriques identient les problmes auxquels vous devez treattentif pendant la ralisation dune tche ou que vous devez rsoudre avant de laccomplir
Remarque Les remarques contiennent un complment dinformation quant la tche en cours de description.
EncadrCes encadrs simples vous donnent des informations annexes sur le sujet abord. Vous en apprendrez plus en matire de technologie ou de fonctionnalit.
iv
Partie 1
Prliminaires1 Les nouveauts dExcel 2003 2 Tour dhorizon 3 15
1
Partie 1 : Prliminaires
Chapitre 1
Les nouveauts dExcel 2003Utilisation des fonctions statistiques optimises . . . . . . . . . 3 Cration de documents intelligents . . . . . . . . . . . . . . . . . . . 6 Cration despaces de travail intelligents . . . . . . . . . . . . . . . . . . . 7 Mise en uvre de la gestion des droits relatifs linformation. . . . . 7 Comparaison de classeurs cte cte . . . . . . . . . . . . . . . . . . 8 Utilisation du volet Recherche . . . 8 Exploitation des fonctionnalits XML tendues . . . . . . . . . . . . . . . 10
Microsoft Excel existe depuis 1985, il nest donc pas tonnant que les lments de base des feuilles de calculs du programme soient rests similaires. Ceci dit, il est toujours possible damliorer un produit et Microsoft Ofce Excel 2003 bnce dune palette de fonctionnalits nouvelles qui rendent la collecte et le transfert des donnes, ainsi que la collaboration, bien plus efcaces que dans les versions antrieures. Lessentiel des amliorations apportes Excel 2003 repose sur lutilisation de XML (Extensible Markup Language), un systme de balisage textuel souple qui permet de dcrire le contenu dune feuille de calcul de faon que les donnes quelle contient puissent tre gres automatiquement et non pas manuellement. Cela vous permet de gagner du temps et dviter les invitables erreurs associes la saisie ou aux copies multiples de donnes. Excel 2003 inclut galement une suite de fonctions statistiques amliores, qui sont beaucoup plus prcises que dans les versions antrieures du programme.
Utilisation des fonctions statistiques optimisesLa plupart des utilisateurs dExcel niront jamais au-del de quelques formules relativement simples, associes des mises en forme standards, pour prsenter des informations commerciales et nancires. Mais les scientiques, les universitaires et certains experts travaillant en entreprise ont besoin de ces fonctions statistiques avances et de fonctions leur apportant une grande prcision. Lquipe des programmeurs Excel a modi la manire dont le programme calcule les rsultats et ce, pour un grand nombre de fonctions statistiques. Cela a permis doptimiser la prcision des rsultats et de les rendre nettement plus intressants pour les utilisateurs avancs. Le tableau 1.1 vous donne la liste de ces fonctions optimises et les dcrit une une.
3
Partie 1 : Prliminaires
Microsoft Excel 2003 VBA
Tableau 1-1. Fonctions statistiques amlioresChapitre 1
LOI.BINOMIALE
Dtermine la probabilit quun nombre dni de tentatives vrai/faux, o chaque tentative a une chance gale de gnrer un rsultat vrai ou faux, donne exactement un nombre spci de russites (par exemple, exactement cinq lancers de pice sur dix vont donner un rsultat de cinq faces). Trouve la valeur qui se rapproche le plus du rsultat dune distribution khi-deux. Retourne une valeur que vous pouvez employer pour construire un intervalle de conance pour une moyenne de population. Dtermine quel moment le nombre dchecs dans une srie de tentatives vrai/faux excde un critre (par exemple, plus de 5 pour cent dampoules fabriques ne fonctionnent pas). Estime lcart-type des valeurs dune colonne en ne prenant en considration que les valeurs correspondant un critre. Calcule lcart-type des valeurs dune colonne partir de toutes les valeurs prsentes dans la colonne. Estime la variance des valeurs dune colonne ou dune liste en ne prenant en considration que les valeurs correspondant un critre. Calcule la variance des valeurs dune colonne partir de toutes les valeurs prsentes dans la colonne. Retourne la valeur qui gnrerait un rsultat cible partir dun test F (test de variabilit entre deux jeux de donnes). Calcule les valeurs futures en fonction dune srie de valeurs temporelles existantes. Retourne la valeur que gnrerait un rsultat donn lissue dun jeu de donnes prsentant une distribution gamma (cest--dire biaise). Prdit la croissance exponentielle dune srie de donnes. Retourne la probabilit de slectionner un nombre exact dun type donn dlments partir dun jeu dobjets mlang. Par exemple, il y a 20 billes dans une bote, dont 6 sont rouges. Si vous choisissez trois billes, quelle est votre probabilit de rcuprer exactement une bille rouge ? Calcule le point auquel une droite va entrer en intersection avec laxe des y.
KHIDEUX.INVERSE INTERVALLE.CONFIANCE
CRITERE.LOI.BINOMIALE
BDECARTYPE BDECARTYPEP BDVAR
BDVARP INVERSE.LOI.F PREVISION LOI.GAMMA.INVERSE
CROISSANCE LOI.HYPERGEOMETRIQUE
ORDONNEE.ORIGINE
4
Partie 1 : Prliminaires
Les nouveauts dExcel 2003
Tableau 1-1. Fonctions statistiques amliores (Suite)DROITEREG Gnre une ligne qui correspond au plus prs un jeu de donnes en gnrant un tableau de valeurs bidimensionnel pour dcrire la ligne. Gnre une courbe qui correspond au plus prs un jeu de donnes en gnrant un tableau de valeurs bidimensionnel pour dcrire la courbe. Retourne le logarithme inverse dune valeur dans une distribution. Retourne le nombre dcarts-types duquel une valeur sloigne de la moyenne dans une distribution logarithmique normale. Retourne la probabilit quun nombre donn dchecs se produise avant un nombre donn de russites dans une distribution binomiale. Retourne le nombre dcarts-types duquel une valeur sloigne de la moyenne dans une distribution normale. Retourne une valeur retant la probabilit quune valeur alatoirement choisie dans une distribution se situe au dessus de ladite valeur dans la distribution. Retourne une distribution normale standard, avec une moyenne de 0 et un cart-type de 1. Retourne une valeur retant la probabilit quune valeur alatoirement choisie dans une distribution normale standard se situe au dessus de ladite valeur dans la distribution. Retourne une valeur retant la force de la relation linaire entre deux jeux de donnes. Retourne la probabilit de survenue dun certain nombre dvnements, compte tenu dune distribution Poisson. Gnre une valeur alatoire. Retourne le carr du coefcient Pearson de deux jeux de valeurs. Retourne linclinaison dune ligne. value lcart-type dun jeu de donnes numriques partir dun chantillon des donnes. value lcart-type dun jeu de donnes (qui peut inclure du texte et des valeurs vrai/faux) partir dun chantillon des donnes. Calcule ltart-type dun jeu de donnes numriques. Calcule lcart-type dun jeu de donnes (qui peut inclure du texte et des valeurs vrai/faux).Chapitre 1
LOGREG
LOI.LOGNORMALE.INVERSE LOI.LOGNORMALE
LOI.BINOMIALE.NEGATIVE
LOI.NORMALE LOI.NORMALE.INVERSE
LOI.NORMALE.STANDARD LOI.NORMALE.STANDARD.IN VERSE
PEARSON POISSON ALEA COEFFICIENT.DETERMINATIO N PENTE ECARTYPE STDEVA
ECARTYPEP STDEVPA
5
Partie 1 : Prliminaires
Microsoft Excel 2003 VBA
Tableau 1-1. Fonctions statistiques amliores (Suite)Chapitre 1
ERREUR.TYPE.XY LOI.STUDENT.INVERSE TENDANCE VAR VAR.P VARPA TEST.Z
Retourne lerreur-type prvisible pour la valeur y pour chaque valeur x dune rgression. Retourne une valeur T en fonction dune probabilit tablie et de degrs de libert. Retourne des valeurs ventiles sur une ligne de tendance. value la variance dun chantillon de donnes. Calcule la variance dune population de donnes. Calcule la variance dune population de donnes, qui peut inclure du texte et des valeurs vrai/faux. Retourne la probabilit que la moyenne dun chantillon de donnes soit suprieure la moyenne observe des donnes du jeu.
Cration de documents intelligentsLes classeurs Excel ont toujours t dous dinteraction avec les autres documents Ofce, mais ces interactions sont restes quelque peu limites. Si la cration de liens avec des donnes du web ou dautres documents Ofce sont des aptitudes intressantes, le classeur Excel nen tait pas moins un bloc de donnes isol. Avec Ofce 2003, les documents intelligents sont des documents Ofce qui possdent des mtadonnes (des donnes qui informent le document sur ce quil est). Les mtadonnes sont des informations qui indiquent comment les donnes sinsrent dans un processus mtier, permettant au document deffectuer des actions programmes en fonction du contexte. Prenons un exemple. Vous travaillez dans une socit de services techniques qui utilise un modle Excel pour suivre le temps pass sur chaque projet. Vous allez sans doute crer un nouveau classeur (avec une feuille de calcul) en dbut de semaine, lenregistrer avec vos informations didentication, et le complter avec le temps travaill la n de chaque journe. Ensuite, arriv la n de la semaine, vous enregistrez le classeur dans un dossier en rseau ou lenvoyez par courriel votre responsable administratif. Par diffrence, les documents intelligents contiennent du code capable de complter les informations relatives votre carte de pointage et la faon dont votre temps de travail sajuste au processus de lactivit. Lorsque vous crez un nouveau classeur carte de pointage , Excel vous reconnat et complte vos informations personnelles (nom, numro demploy, projets, etc.). Puis lorsque vous avez termin votre travail de la semaine, le document intelligent afche un bouton qui vous permet denvoyer le classeur la prochaine tape du processus. Et en ce qui vous concerne, peu importe le mcanisme employ pour relayer les donnes. Celles-ci peuvent aller se placer dans une base de donnes, tre enregistres dans une feuille de calcul quelque part sur le rseau, tre incorpores aux donnes dun serveur BizTalk charg du suivi des ux dactivit, ou tre envoyes en pice jointe dun message Outlook adress votre responsable administratif.
6
Partie 1 : Prliminaires
Les nouveauts dExcel 2003
Cration despaces de travail intelligentsLe nombre de documents ncessitant lintervention de plusieurs personnes augmente jour aprs jour. Par exemple, lorsque vous estimez le cot dun important projet, vous avez besoin dinformations de tous les membres de votre quipe pour dterminer les produits et les composants prendre en considration. Sans parler de la somme des tches administratives quil vous faut fournir pour grer le projet en interne. Le partage et la fusion de classeurs permettent de rcuprer les informations parses, mais ce sont des tches pineuses. Il suft que lun de vos collaborateurs ajoute ou modie son mot de passe sur son exemplaire du classeur pour que vous ne puissiez plus inclure ses modications dans la fusion. Or si vous exploitez Excel 2003 en conjonction avec Microsoft Windows SharePoint Services, vous pouvez optimiser le processus de coopration, de modication et de vrication des classeurs en crant un espace de travail intelligent. Un espace de travail intelligent est un espace de travail virtuel cr sur un site SharePoint. Il permet aux personnes munies du droit daccs au classeur de travailler sur une copie de celui-ci sur le serveur SharePoint ou sur une copie locale quelles peuvent actualiser en ajoutant les changements survenus au niveau de lexemplaire principal stock dans lespace de travail. Une fois que vous avez cr lespace de travail et donn chacun des membres de votre quipe laccs cette portion du site, ceux-ci pourront travailler sur le mme exemplaire du classeur. Toute modication enregistre dans un exemplaire quelconque du document devient disponible pour chaque membre de lquipe. Si les modications crent des conits, vous-mme, en tant quadministrateur, pouvez trancher quant aux changements valider. Vous pouvez galement vous servir du volet Espace de travail partag pour crer et administrer lespace de travail intelligent. Remarque On peut utiliser les espaces de travail intelligents avec Microsoft Ofce Word 2003, Excel 2003, PowerPoint 2003 et Visio 2003.Chapitre 1
Mise en uvre de la gestion des droits relatifs linformationDans le domaine du numrique, lun des problmes les plus difciles rsoudre est celui de la surveillance de laccs aux informations. Les mots de passe, les comptes et autres restrictions daccs permettent de dcider des personnes habilites lire les chiers dun ordinateur ou dun rseau, mais une fois quun chier non protg a quitt son primtre de scurit, nimporte qui peut le copier et le diffuser sa guise. Les nouvelles fonctionnalits IRM (Information Rights Management, gestion des droits relatifs linformation) dOfce 2003 permettent de prserver la condentialit de vos informations en limitant les personnes habilites voir et modier vos chiers. Par ailleurs, les administrateurs rseau peuvent crer des stratgies qui vous permettent de dnir des permissions au niveau des utilisateurs pour limiter laccs aux contenus. Ainsi, les utilisateurs qui dune manire ou dune autre, parviennent mettre la main sur des copies
7
Partie 1 : Prliminaires
Microsoft Excel 2003 VBA non autorises de vos chiers ne parviendront pas pour autant jeter un il sur votre budget prvisionnel de lanne prochaine. Les utilisateurs autoriss mais qui ne disposent pas encore dOfce 2003 ou version ultrieure sur leur ordinateur pourront exploiter les visionneuses de chiers pour lire les documents, mais ils ne pourront pas les modier. Remarque IRM (Information Rights Management) nest disponible que dans Microsoft Ofce Professional Edition 2003, Word 2003, Excel 2003 et PowerPoint 2003.
Chapitre 1
Comparaison de classeurs cte cteUne autre fonctionnalit intressante dExcel 2003 consiste pouvoir faire dler deux fentres simultanment de manire pouvoir en comparer les contenus. mesure que vous faites dler les cellules de donnes, des motifs apparaissent qui vous permettent souvent de relever des diffrences lil nu. Ces diffrences deviennent encore plus visibles lorsque vous utilisez les formats conditionnels ou le suivi des modications pour afcher les cellules de donnes dans un format diffrent de celui du reste des donnes. Pour activer cette nouvelle fonction, il vous suft douvrir deux classeurs comparer et de cliquer sur Fentre, Comparer en cte cte avec.
Utilisation du volet RechercheExcel 2003 comporte galement plusieurs outils supplmentaires de recherche qui vous aident trouver des informations en provenance de nombreuses sources diffrentes. Afchez le volet Recherche en cliquant sur Afchage, Volet Ofce et si ncessaire, en cliquant sur Autres volets Ofce (en haut du volet des tches) puis sur Rechercher. Une fois que vous avez afch le volet Recherche, vous pouvez taper un mot ou un groupe de mots dans la zone Rechercher. Il est galement possible de slectionner des ouvrages de rfrence. Ensuite, cliquez sur le bouton Dmarrer la recherche (la che verte droite de la zone de recherche) pour afcher les informations trouves. La gure 1.1 prsente le volet Recherche avec une slection douvrages de rfrence que vous pouvez consulter.
8
Partie 1 : Prliminaires
Les nouveauts dExcel 2003
f01pr01.eps
Figure 1-1. Vous pouvez rechercher des synonymes, des mots dans une encyclopdie et traduire des mots en langues trangres laide des outils du volet Recherche.
Astuce Rechercher le contenu dune cellulePour lancer une recherche sur le contenu dune cellule dans les ouvrages de rfrence du volet Recherche, maintenez enfonce la touche ALT et cliquez sur la cellule contenant le texte voulu.
Au bas du volet Recherche, cliquez sur les liens pour actualiser les outils de recherche installs sur votre ordinateur, comme les thsaurus et les dictionnaires. Vous disposez galement dun lien vers Ofce Marketplace. Ofce Marketplace est une ressource du site web de Microsoft qui recense tous les services par abonnement vers lesquels vous pouvez vous tourner lorsque les informations du volet Recherche ne vous apportent pas ce dont vous avez besoin. Parmi ces ressources, vous trouverez la eLibrary, qui vous donne accs 13 millions de documents multimdias, dont des photographies et des cartes, qui sont collectes dans les journaux publis travers le monde entier, ainsi que plus de 450 000 prols dentreprise extraits de la collection Thomson Company Proles. Y sont recenses 300 000 socits nord-amricaines. Vous y trouverez galement des comparatifs par secteur dactivit, des informations concernant les parts de march, les classements, ainsi que des actualits extraites de plus de 2 500 priodiques diffrents.
9
Chapitre 1
Partie 1 : Prliminaires
Microsoft Excel 2003 VBA
Exploitation des fonctionnalits XML tenduesLe changement le plus notable dExcel 2003 est sans doute la prise en charge optimise de XML (Extensible Markup Language). la diffrence du langage HTML (Hypertext Markup Language), qui permet de dcrire lapparence des donnes sur le web, XML permet de dcrire la structure des donnes. Par exemple, un tableau HTML contenant les rsultats des ventes dune socit est parfaitement comprhensible par toute personne qui lobserverait avec attention. Mais le serveur qui prsente ces donnes et le client qui les rceptionne pour le compte de son utilisateur sont des machines qui nont pas la moindre ide du type de donnes transmis. Or avec un chier XML, les machines deviennent capables de reconnatre quelles transportent des donnes de ventes et partant de l, les grent de la manire approprie. XML est pris en charge depuis Excel 2002, mais on ne pouvait quouvrir et enregistrer des classeurs au format Feuille de calcul XML. Ctait intressant, mais loin de constituer une aptitude pleine et entire. Remarque Toutes les fonctionnalits nouvelles dcrites dans cette section sont disponibles uniquement dans Microsoft Ofce 2003 dition Professionnelle. Les utilisateurs des autres ditions peuvent seulement enregistrer et ouvrir des classeurs XML, comme ctait dj le cas dans Excel 2002.
Chapitre 1
Crer des listes ExcelDe nombreux outils avancs dExcel fonctionnent sur des listes, qui sont des plages de cellules tales sur une ou plusieurs colonnes et dans lesquelles chaque colonne prend un intitul. Dans Excel 2002 et versions antrieures, les listes taient un peu hasardeuses lorsquil sagissait de gnrer des tableaux croiss dynamiques, de trier des donnes ou de crer un ltre automatique. Vous cliquiez sur une cellule quelconque de la plage et choisissiez llment de menu correspondant ce que vous vouliez faire. Si Excel ne parvenait pas dterminer des limites de plage, quil nidentiait pas un intitul dans lune ou lautre colonne, le rsultat tait bancal. Avec Excel 2003, les listes sont devenues des entits bien dnies que vous crez en choisissant Donnes, Liste, Crer une liste. Les commandes de la bote de dialogue Crer une liste vous permettent de dnir la zone occupe par la liste. Remarque Si vous slectionnez les cellules de votre liste avant deffectuercette opration, la plage apparat automatiquement dans la bote de dialogue.
Lorsque vous crez une liste, il se passe plusieurs choses. Une bordure apparat autour de la liste. Vous pouvez faire glisser cette bor-
dure pour redimensionner la liste.
10
Partie 1 : Prliminaires
Les nouveauts dExcel 2003 Les contrles de ltrage automatique apparaissent dans les cellules
dintitul ; vous pouvez vous en servir pour slectionner les modalits dafchage des donnes dans la liste. Une ligne dinsertion apparat, matrialise par un astrisque. Comme dans une table Access ou un formulaire de saisie Excel, vous pouvez complter la ligne dinsertion et appuyer sur ENTRE pour ajouter les donnes au reste de la liste et gnrer une nouvelle ligne dinsertion. La barre doutils Liste apparat ; elle contient des boutons utiles pour la gestion des listes. Vous avez la possibilit dafcher une ligne de total au bas de la liste en cliquant sur le bouton Afcher/Masquer la ligne Total dans la barre doutils Liste. Lopration par dfaut effectue dans la ligne de total consiste faire la somme du contenu de la colonne, mais vous pouvez cliquer dans nimporte quelle cellule de la ligne de total pour lui appliquer dautres oprations. Une fois la liste cre (comme dans lexemple de la gure 1.2), vous pouvez travailler sur la liste en tant quentit propre au sein de votre feuille de calcul. Par exemple, vous pouvez ltrer les donnes, crer un tableau crois dynamique ou ajouter de nouvelles lignes la liste. Quelle que soit la tche choisie, Excel dcale le contenu de la feuille de calcul situ autour de la liste an de faire de la place la nouvelle entre (comme par exemple en ajoutant une ligne vierge aprs la saisie dune nouvelle ligne). Si vous travaillez en rseau avec SharePoint Services, vous pouvez publier la liste sur le serveur, actualiser les donnes de la liste en utilisant lexemplaire publi sur le site SharePoint ou modier un exemplaire de la liste sur un ordinateur non connect au rseau et intgrer les modications lors de la reconnexion. Les outils de validation des donnes plus avancs de SharePoint sont galement votre disposition pour limiter les types de donnes que vous ou vos collaborateurs pouvez saisir dans les listes publies. Dans Excel, vous pouvez obliger les utilisateurs saisir des donnes numriques, mais sur un serveur SharePoint, vous pouvez tre encore plus spcique quant aux types de donnes, en obligeant les utilisateurs ne saisir, par exemple, que des valeurs entires.
11
Chapitre 1
Partie 1 : Prliminaires
Microsoft Excel 2003 VBA
Chapitre 1
Figure 1-2. Les listes de donnes optimisent votre capacit crer et afcher des collections de donnes dans Excel 2003.
Mapper des donnes Excel avec des schmas XMLLes structures de donnes XML sont dnies dans un schma, qui est stock dans Excel dans un chier .xsd. Le code XML qui suit montre comment vous pouvez construire un schma partiel pour stocker des donnes darticle.Ce code XML nest pas une macro que vous pouvez excuter avec lditeur Microsoft Visual Basic. Il se contente de dcrire un produit possdant trois attributs.
Ce schma indique Excel didentier trois lments de donnes pour une structure de donnes appele productType : productId, productName et priceEach. La dclaration complexType nomme la structure de donnes, tandis que les dclarations de dnition des lments vous donnent le nom des lments et le type de donnes attendu (dans ce cas, il sagit dune chane ou dune valeur dcimale). En outre, la dclaration indique Excel didentier les lments exactement dans cet ordre chaque fois.
12
Partie 1 : Prliminaires
Les nouveauts dExcel 2003
Techniquement, les Complments Ofce 2003 font partie de la suite Ofce et pas seulement dExcel 2003. Ils incluent plusieurs composants permettant de publier des pages web capables de se comporter comme des feuilles de calcul. Ils permettent de publier sur le web des feuilles de calcul, des graphiques et des bases de donnes. Un autre composant, le Data Access Component, prsente des fonctions daccs des bases de donnes pour les listes.
13
Chapitre 1
Publier des feuilles de calcul avec les Complments Ofce 2003
Partie 1 : Prliminaires
Chapitre 2
Tour dhorizonClasseurs . . . . . . . . . . . . . . . . . . . 15 Feuilles de calcul . . . . . . . . . . . . . 16 Cellules et plages. . . . . . . . . . . . . 18 Linterface Excel . . . . . . . . . . . . . 20 Formules . . . . . . . . . . . . . . . . . . . 24
Si la programmation dans Microsoft Ofce Excel 2003 vous intresse, vous matrisez probablement la disposition de base dun classeur Excel et manipulez avec aisance les classeurs, feuilles de calcul, donnes et formules. Mais, si la cration de scnarios na plus de secret pour vous, si vous connaissez le nombre de couleurs utilisables dans un classeur Excel et si vous savez comment Excel vous assiste dans la cration des formules, nhsitez pas lire directement le chapitre suivant.
ClasseursLe classeur constitue lunit de base de lorganisation dans Excel. Dans la hirarchie Microsoft Ofce, un classeur Excel est lquivalent dun document Word, dune base de donnes Access ou dune prsentation PowerPoint. linstar des sections dans les documents, des tables dans les bases de donnes et des diaporamas dans les prsentations, les classeurs Excel hbergent un ensemble de feuilles qui contiennent des donnes ainsi que dautres objets Excel. Excel 2003 supporte les quatre types de feuilles suivants, mais vous exploiterez essentiellement les deux premiers : Feuilles de calcul ; Feuilles de graphique ; Feuilles de macros Excel 4.0 (galement appeles chiers XML) ; Feuilles de dialogue Excel 5.0 (une mthode pour crer une bote de dialo-
gue personnalise). Il nest plus possible de crer des chiers XML ou des feuilles de dialogue, mais Excel 2003 permet douvrir des chiers Excel 4.0 ou 5.0 sans aucune perte de fonctionnalit. Si vous travaillez dans une entreprise qui exploite les mmes classeurs de base depuis longtemps, la capacit de Excel 2003 travailler avec danciens chiers attnue la transition entre les anciens et les nouveaux classeurs. Les nouveaux classeurs Excel contiennent par dfaut trois feuilles de calcul. Pour modier cette valeur, dans le menu Outils, choisissez Options, cliquez sur
15
Partie 1 : Prliminaires
Microsoft Excel 2003 VBA longlet Gnral et tapez une valeur dans la zone Nombre de feuilles de calcul par nouveau classeur. Astuce Limitez le nombre de feuilles de calcul une.Si vous prvoyez de crer un nombre important de modles (un modle tant un classeur contenant une seule feuille de calcul), optez pour une feuille de calcul par classeur par dfaut jusqu ce que vous ayez termin la cration des modles.
Pour parcourir les feuilles de calcul dun classeur, servez-vous des commandes de la barre donglets qui se trouve dans langle infrieur gauche de la fentre Excel. Chaque feuille de calcul possde son propre onglet (intituls Feuil1, Feuil2 et Feuil3, par dfaut). Cliquez sur un onglet pour afcher la feuille correspondante. Si vous cliquez droit sur un onglet, vous afchez un menu contextuel hbergeant les commandes pour insrer une nouvelle feuille, renommer ou supprimer la feuille slectionne, dplacer ou copier des feuilles ou modier la couleur de longlet de la feuille slectionne. La possibilit de modier la couleur de longlet, introduite dans Excel 2002, offre un moyen pratique pour dsigner une feuille laquelle vous avez apport des modications, mettre en vidence une feuille par rapport une autre (pour une feuille rcapitulative, par exemple) et simplier la navigation au sein du classeur. Important Excel vous impose toutefois une limite de 56 couleurs par classeur. Cette limite ne comprend pas les couleurs utilises dans les graphiques incorpors ou lis un classeur : si vous devez afcher un graphique complexe, comprenant plus de 56 couleurs, commencez par crer le graphique, puis exportez-le avec sa lgende dans un programme ddi et modiez-le ainsi que sa lgende. Ensuite, afchez le graphique et sa lgende dans des chiers graphiques spars ou incorporez le nouveau chier dans le classeur.
Chapitre 2
Feuilles de calculDes quatre types de base de feuilles prsents dans Excel, les feuilles de calcul sont de loin les plus couramment exploites. Elles contiennent des cellules, organises en lignes et colonnes, o vous stockez les donnes et crez des formules pour synthtiser ces donnes. Comme le montre le tableau 2.1, les feuilles de calcul Excel possdent au maximum 256 colonnes et 65 536 lignes. Si vous travaillez avec des jeux de donnes plus importants, comme ceux gnrs par des expriences scientiques ou un systme de suivi des transactions dans une entreprise de vente intensive, vous serez contraint dcrire les donnes dans un chier texte que vous diviserez en sections grables ou dutiliser une application plus puissante, adapte aux besoins de lentreprise pour analyser les donnes.
16
Partie 1 : Prliminaires
Tour dhorizon
Tableau 2-1. Les feuilles de calcul Excel peuvent contenir nombre de donnes, mais elles possdent leurs limitesAttributNombre maximum de lignes Nombre maximum de colonnes Largeur de colonne Hauteur de ligne Nombre maximum de sauts de page Nombre maximum de scnarios
Limite65 536 256 255 caractres 409 points Pas de maximum, mais le rcapitulatif des scnarios en afche 251 au maximumChapitre 2
1000
Nombre maximum de changements de 32 cellule dans un scnario Nombre maximum de changements de 200 cellule dans le Solveur
Le scnario, qui permet de dnir des jeux de donnes alternatifs dans une feuille de calcul, est sans nul doute lune des fonctionnalits les moins exploites dans Excel. Comme vous avez pu le noter dans le tableau 2.1, chaque scnario peut contenir jusqu 32 changements. Les scnarios possdent plusieurs avantages : ils sont rapides dnir (cliquez sur Outils, Gestionnaire de scnarios et servezvous des commandes de la bote de dialogue illustre par la gure 2.1) et permettent de basculer entre diffrents jeux de donnes sans quil soit ncessaire de crer une nouvelle feuille de calcul contenant les donnes thoriques. Si vous crez une nouvelle feuille de calcul contenant 12 valeurs, dont trois changent, les scnarios ne vous feront gure conomiser de temps. En revanche, si vous travaillez sur une grande plage de valeurs (ou des combinaisons de valeurs) changeantes et que vous ne voulez pas crer une feuille de calcul diffrente pour chaque combinaison possible, vous pouvez crer un scnario pour chaque combinaison et basculer de lun lautre au sein de la mme feuille de calcul.
Figure 2-1. La bote de dialogue Gestionnaire de scnarios permet de grer et de prsente des jeux de donnes alternatifs.
17
Partie 1 : Prliminaires
Microsoft Excel 2003 VBASi vous devez crer un scnario contenant plus de 32 changements, vous devrez crer un nouveau classeur pour hberger les donnes.
Cellules et plagesDans Excel, la cellule, forme par lintersection dune colonne et dune ligne dans une feuille de calcul, constitue le bas de la hirarchie organisationnelle. Une cellule contient une valeur ou une formule. Par dfaut, Excel afche le rsultat de la formule. Pour modier ce paramtre, dans le menu Outils, cliquez sur Options puis sur longlet Afchage et cochez la case Formules. Remarquez que la formule safche toujours dans la barre des formules, que les formules soient ou non afches dans les cellules. Optez pour lun ou lautre afchage en fonction de la prsentation souhaite. Remarque Si vous optez pour lafchage des formules en lieu et place deleurs rsultats, la barre doutils Audit de formules safche. Elle prsente des boutons qui permettent didentier les cellules utilises dans les formules, de visualiser les changements de valeurs dans les cellules spciques et de parcourir les formules calcul aprs calcul pour liminer toute erreur.
Chapitre 2
Une fois les donnes saisies, vous dnissez leur mise en forme. La barre doutils Mise en forme, afche par dfaut, accueille une palette de boutons qui permettent de modier lapparence de base des donnes, comme afcher le contenu de la cellule en gras ou dans une police diffrence. Toutefois, pour bncier dun contrle plus prcis sur lapparence des donnes, dans le menu Format, choisissez Cellule pour afcher la bote de dialogue de la gure 2.2. Dans la bote de dialogue Format de cellule, vous modiez lorientation du texte dans la cellule, ajustez la taille de la cellule au contenu existant sans dborder ou ajoutez des bordures. Il est toutefois facile dabuser de la mise en forme. Rappelez-vous toujours que lobjectif dune feuille de calcul Excel est de simplier la lecture des donnes et non de crer une uvre dart.
18
Partie 1 : Prliminaires
Tour dhorizon
Figure 2-2. Servez-vous des commandes de la bote de dialogue Format de cellule pour prsenter vos donnes.
Vous pouvez traiter les cellules individuellement ou en groupes. Pour modier la mise en forme dun groupe de cellules, il vous suft de slectionner les cellules et deffectuer les modications. Pour utiliser les valeurs dun groupe de cellules dans une formule, vous procdez de manire similaire. Par exemple, vous tapez la formule =SOMME() dans une cellule, placez le point dinsertion entre les parenthses puis slectionnez les cellules employer dans la formule. mesure que vous slectionnez les cellules, les rfrences des cellules sont insres dans la formule. Selon cet exemple, si vous slectionnez les cellules C3 C24, vous obtenez la formule =SOMME(C3:C24). En outre, linstar de Excel 2002, vous pouvez slectionner un groupe de cellules non contigus en maintenant enfonce la touche CTRL. Par exemple, si vous tapez =SOMME() dans une cellule, placez le point dinsertion entre les parenthses, slectionnez les cellules C3 C24, maintenez la touche CTRL enfonce en slectionnant la cellule C26, vous obtenez la formule suivante =SOMME(C3:C24, C26). Important Lorsque vous crez une formule, si vous appuyez sur la toucheavant davoir terminer la formule, vous obtenez une erreur. Tapez =SOMME( puis slectionnez les cellules inclure avant de taper la parenthse fermante.ENTRE
Lorsque vous travaillez avec un grand nombre de feuilles de calcul et de formules ou si vous devez transmettre un classeur que vous avez cr un collgue, il nest gure pratique dutiliser les rfrences de cellule pour dsigner les valeurs employes dans une formule. Au lieu de ces obscures rfrences, crez des plages nommes (souvent appeles simplement noms) pour simplier la lecture des formules. Par exemple, sur une feuille de calcul hbergeant les ventes de plusieurs catgories de produits, vous pouvez crer une plage nomme par catgorie et crer une formule comme =SOMME(Machines,Logiciel,Consultation) au lieu de =SOMME(C3:C24,D3:D24,E3:E24). La mthode la plus rapide pour crer une plage nomme consiste slectionner les cellules de la plage, cliquer sur la zone Nom, qui se trouve lextrmit gau19
Chapitre 2
Partie 1 : Prliminaires
Microsoft Excel 2003 VBA che de la barre de formule et taper le nom de la plage (la zone Nom est la zone de la barre de formule qui afche ladresse de la cellule slectionne).
Pour utiliser des plages existantes, dans le menu Insertion, choisissez Nom, Dnir pour afcher la bote de dialogue Dnir un nom (voir gure 2.3), dans laquelle vous pouvez ajouter ou supprimer des plages.
Chapitre 2
Figure 2-3. Utilisez la bote de dialogue Dnir un nom pour grer vos plages nommes.
Pour connatre les cellules quenglobe la plage nomme, cliquez sur la che oriente vers le bas qui se trouve lextrmit droite de la zone Nom et cliquez sur le nom de la plage.
Linterface ExcelUn excellent tableur nest daucune utilit si lon ne trouve pas ce que lon cherche. Les concepteurs dExcel ont dvelopp lorganisation et lapparence de linterface Excel pour permettre aux utilisateurs de tirer prot au mieux de leurs classeurs. La gure 2.4 montre la fentre Excel prsentant les lments cls de linterface Excel.
Au QuotidienAu dmarrage, Excel exploite le systme de menus adaptatifs qui afche uniquement les commandes les plus employes, ce qui vous oblige survoler le bas du menu avec le pointeur de la souris pour le dvelopper dans son intgralit. En thorie, lide est intressante, mais pour la majorit des utilisateurs qui ne matrisent pas le programme elle constitue plutt un obstacle. Vous pouvez, et devriez, dsactiver le systme de menus adaptatifs. Pour ce faire, dans le menu Outils, choisissez Personnaliser et sur longlet Options, cochez la case Toujours afcher les menus dans leur intgralit.
20
Partie 1 : Prliminaires
Tour dhorizon
Figure 2-4. Linterface Excel permet daccder rapidement aux diverses fonctionnalits du programme. Barre de titre. La barre de titre se trouve dans la partie suprieure de la fentre
Excel et prsente le nom du programme (Microsoft Excel) suivi ventuellement du nom du classeur actif. Si des restrictions daccs sappliquent au classeur actif ou sil est partag, son nom est suivi dune dsignation entre crochets. Si vous avez ouvert plusieurs copies du mme classeur, le premier nom est suivi de 1, le deuxime de 2 et ainsi de suite. Bouton Slectionner tout. Le bouton Slectionner tout constitue loutil de base par excellence et se trouve gauche de len-tte de la Colonne A et au-dessus de len-tte de la Ligne 1. Cliquez dessus pour slectionner toutes les cellules de la feuille de calcul. Barres de commandes. Les barres de menus et les barres doutils sont diffrentes, mais elles fonctionnent de la mme manire. Choisir la commande Enregistrer du menu Fichier revient cliquer sur le bouton Enregistrer de la barre doutils, alors pourquoi deux systmes, en plus du raccourci clavier CTRL+S ? Parce que chaque utilisateur a sa mthode favorite. Barre de formule. Excel prsente la formule de la cellule active dans la barre de formule, la longue bande blanche qui se trouve au-dessus des en-ttes de colonnes de la feuille de calcul. Si la cellule active ne contient pas de formule, la barre de formule contient sa valeur. Pour masquer la barre de formule, dans le menu Afchage, choisissez Barre de formule. Il sagit dune commande bascule, autrement dit, vous cliquez pour lactiver et cliquez nouveau pour la dsactiver. Zone Nom. La zone Nom reprsente llment le plus polyvalent de linterface Excel. Si vous avez cr une plage nomme, comme nous lavons dcrit 21
Chapitre 2
Partie 1 : Prliminaires
Microsoft Excel 2003 VBA plus tt dans ce chapitre, vous pouvez slectionner une plage en cliquant sur la che pointant vers le bas, qui se trouve droite de la zone Nom et cliquer sur le nom de votre choix pour la slectionner (cette action encadre les cellules de la plage nomme). Si vous navez pas slectionn de plage nomme, la zone Nom contient la rfrence de la cellule active (par exemple, A1) ou la zone slectionne par glisser-dplacer. Par exemple, si vous slectionnez une zone de trois lignes par dix colonnes, la zone Nom afche 3L 10C jusqu ce que vous relchiez le bouton de la souris, puis elle indique la rfrence de la cellule qui se trouve dans langle suprieur gauche de la plage slectionne. Remarque Il est intressant de connatre les dimensions exactes de la zone slectionne si vous devez coller un groupe de cellules provenant dune autre feuille de calcul dans la feuille de calcul actuelle.Commandes de la fentre du programme. Les commandes de programme Win-
Chapitre 2
dows standard se trouvent dans la partie suprieure droite de la fentre Excel : le bouton Rduire, le bouton Restaurer la fentre, le bouton Agrandir (qui safche lorsque la fentre a t redimensionne) et le bouton Fermer. Commandes de la fentre du classeur. Ces boutons fonctionnent exactement de la mme manire que les commandes de la fentre du programme, excepts quils affectent le classeur actif (la fentre Excel conserve la taille quelle avait au moment o on a cliqu sur les boutons). Zone Tapez une question. Cette zone constitue la mthode la plus rapide pour rechercher des rubriques dans le systme daide Excel. Tapez un mot ou une phrase dans la zone Tapez une question et appuyez sur Entre pour afcher une liste de rubriques daide dans le volet Rsultats de la recherche qui se trouve droite du classeur. Cliquez sur le nom dune rubrique pour lafcher. Volets Ofce. Introduits dans Excel 2002, les volets Ofce sont des interfaces quipes de liens permettant deffectuer les tches courantes dans un certain nombre de domaines. Les volets Ofce safchent sur le bord droit de la fentre Excel lorsque vous effectuez certaines tches (par exemple, si vous cliquez sur Fichier, Nouveau, vous afchez le volet Nouveau classeur). Vous pouvez galement afcher les volets Ofce par le biais du menu Afchage en choisissant Volet Ofce. Voici les volets Ofce disponibles dans Excel 2003 : Image clipart. Ce volet propose des liens pour rechercher des clips dans la Bibliothque multimdia, permet dorganiser les clips enregistrs et dobtenir de laide sur des rubriques relatives aux clips. Presse-papiers. Le volet Ofce Presse-papiers constitue le nouvel emplacement du Presse-papiers Ofce. Il peut contenir jusqu 24 lments copis ou coups.
22
Partie 1 : Prliminaires
Tour dhorizon Rcupration de document. Si Excel subit une dfaillance alors
quun classeur est ouvert, le volet Ofce Rcupration de document safche lorsque vous ouvrez nouveau Excel. Vous pourrez choisir entre rcuprer les versions les plus rcentes du classeur ou rcuprer le classeur avec la dernire Rcupration automatique du chier. Mises jour du document. Exploit avec les services SharePoint, ce volet permet de grer les modications apportes aux classeurs placs dans un espace de travail partag. Accueil. Le volet Ofce Accueil hberge les liens permettant douvrir un chier rcemment employ, de crer un nouveau classeur ou de se connecter au site web Microsoft Ofce Online. Aide. Le volet Ofce Aide contient des liens vers les communauts du support Microsoft, des informations daide, des formations Microsoft Ofce et les nouveauts dExcel 2003. Nouveau classeur. Le volet Ofce Nouveau classeur permet dutili-
ser les modles pour crer un nouveau classeur, de rechercher des modles de classeurs sur votre ordinateur ou sur le site Microsoft Ofce Online et de crer un classeur vide. Rechercher. Le volet Ofce Rechercher contient des liens vers une gamme doutils de recherche permettant de localiser des mots et des phrases. Il existe des dictionnaires et des dictionnaires de synonymes dans plusieurs langues, ainsi quun utilitaire de traduction qui permet de trouver des termes correspondants en anglais, portugais et italien entre autres. Rsultats de la recherche. Le volet Rsultats de la recherche permet deffectuer une recherche dans le systme daide, sur Microsoft.com, sur le site de support Ofce ou dexploiter des outils de recherche avec un mot ou une phrase que vous saisissez. Espace de travail partag. Le volet Ofce Espace de travail partag, qui fait galement partie du nouveau support Excel 2003 pour les services SharePoint, contient un ensemble de liens hypertexte que vous pouvez exploiter pour crer et grer des espaces de travail au sein desquels vous et vos collgues pouvez collaborer sur un document partag. Source XML. Le volet Ofce Source XML contient un ensemble doutils qui permettent dassigner une structure XML une feuille de calcul pour que vous puissiez changer des donnes XML avec vos collgues et clients. Barre donglets. La barre donglets contient un onglet par feuille de calcul. Pour naviguer de feuille en feuille, servez-vous des ches de la barre donglets ; pour afcher une feuille en particulier ou modier la couleur de longlet, cliquez sur longlet. Barre dtat. Comme lindique son nom, la barre dtat Excel prsente ltat du programme. Elle indique si une sauvegarde ou une sauvegarde automati-
23
Chapitre 2
Partie 1 : Prliminaires
Microsoft Excel 2003 VBA que est en cours, elle afche le total en cours des valeurs des cellules slectionnes et vous indique, entre autres choses, si les majuscules sont verrouilles, si le dlement est verrouill et/ou si la touche VERR NUM est active sur votre clavier.
Au QuotidienLa fonction opration rcapitulative est quelque peu mconnue mais elle offre une mthode fort pratique dadditionner rapidement quelques cellules de donnes dans Excel. Si vous slectionnez plusieurs cellules, la barre dtat prsente la somme des donnes dans une zone qui se trouve gauche de lindicateur du verrouillage du pav numrique. Laddition constitue lopration rcapitulative par dfaut. Pour changer ce paramtre, cliquez droit dans la zone qui contient le rsultat et, dans le menu contextuel, choisissez Moyenne, Compteur, Chiffres (autrement dit, le nom de cellules dans la slection qui contiennent une valeur numrique), Maximum, Minimum ou Somme. Pour dsactiver la fonctionnalit, cliquez sur Aucun. Pour lactiver nouveau, cliquez droit dans la zone de la barre dtat et slectionnez la nouvelle opration.Chapitre 2
FormulesExcel est un programme de stockage des donnes extrmement puissant, mais son principal atout rside dans la synthse des donnes. Il permet de crer des formules qui exploitent et rcapitulent les valeurs contenues dans les classeurs. Les formules peuvent tre simples, par exemple, afcher la valeur dune cellule dans une autre cellule (par exemple, =A1 afche la valeur de la cellule A1 dans la cellule qui hberge la formule) ou extrmement complexes et contenir des donnes provenant de plusieurs milliers de cellules. Dans Excel 2003, lorsque vous saisissez une formule dans une cellule, Excel reconnat la fonction et afche les paramtres attendus sous la forme dune infobulle dargument. Par exemple, si vous saisissez =RECHERCHEV(, Excel afche une info-bulle dargument contenant RECHERCHEV(valeur_cherche; table_matrice; no_index_col; [valeur_proche]). Le premier paramtre saisir, la dsignation de la cellule ou la valeur de valeur_cherche, apparat en gras jusqu ce que vous saisissiez le paramtre, suivi dun point-virgule. Aprs avoir tap le point-virgule, qui indique que vous avez termin de saisir la valeur du paramtre, le nom du paramtre suivant safche en gras. Astuce Dans linfo-bulle dargument qui safche lorsque vous tapez une formule, vous pouvez cliquer sur le nom dun paramtre pour lequel vous avez dj saisi une valeur pour la modier.
Laide la cration de formules ne se limite toutefois pas aux info-bulles dargument. Si vous ntes pas sr de la fonction employer pour gnrer un rsultat, dans le menu Insertion, choisissez fonction ou cliquez sur le bouton Insrer une 24
Partie 1 : Prliminaires
Tour dhorizon fonction qui se trouve lextrme droite de la barre de formule pour afcher la bote de dialogue Insrer une fonction (voir gure 2.5). Cette bote de dialogue liste toutes les fonctions disponibles par catgorie et, si vous cliquez sur une fonction, vous afchez une description de son action ainsi que les arguments attendus. Si vous double-cliquez sur le nom de la formule, une bote de dialogue secondaire safche pour vous aider crer la formule pas pas.
Figure 2-5. La bote de dialogue Insrer une fonction permet de trouver une fonction et vous guide dans le processus de cration.
25
Chapitre 2
Partie 2
Visual Basic pour Applications3 Exploration de Visual Basic pour Applications 4 Dmarrage de la programmation VBA 5 Cration de procdures Sub et Function 29 47 95
27
Partie 2 : Visual Basic pour Applications
Chapitre 3
Exploration de Visual Basic pour ApplicationsTour dhorizon de la programmation oriente objet. . . 29 Le travail avec les macros. . . . . . 33
Ce chapitre vous montre comment fonctionnent les macros dans le contexte de Microsoft Ofce Excel 2003. La seconde partie de ce chapitre explique comment enregistrer les macros, mais commenons par le commencement : que se passet-il lorsque vous crez une macro ? Pour rester brefs, disons que VBA (Visual Basic pour Applications) voit Excel comme une srie dobjets qui ont des attributs descriptifs et des actions quils savent excuter. Dans le chapitre 1, Les nouveauts dExcel 2003 , vous avez dcouvert quelques lments de base que vous retrouverez lors de lutilisation et la programmation dExcel ; ce chapitre poursuit lanalyse en vous montrant de quelle manire les langages de programmation orients objet exposent leurs lments, et comment manipuler ces objets avec lenregistreur de macros.
Tour dhorizon de la programmation oriente objet la base, un programme informatique nest autre quun jeu dinstructions quun ordinateur excute dans un ordre spci. Dans Excel, cet ordre peut changer en fonction du contenu de la feuille de calcul sur laquelle travaille le programme, mais il subsiste un principe fondamental des langages de programmation : si vous alimentez un programme avec un mme jeu de donnes, vous obtenez toujours le mme rsultat. Les langages de programmation de premire gnration taient procduraux ; les programmeurs concevaient un algorithme, ou procdure, que le programme devait suivre, et dnissaient des variables (sortes de conteneurs de valeurs) au fur et mesure de leur travail. mesure que les programmes gagnaient en complexit, il devenait de plus en plus important de pouvoir nommer les variables de manire descriptive. Sil est ais de crer une variable nomme prix pour stocker le prix dun produit mis en vente dans un magasin, il est difcile dcrire un programme extensible capable de conserver la trace de tous les prix dans le cadre dun stock en perptuel changement. Car il faudrait crer une nouvelle variable chaque fois que lon veut commercialiser un nouveau produit. Or ce nest pas bien compliqu si cela se produit une ou deux fois par jour, mais si vous dvelop29
Partie 2 : Visual Basic pour Applications
Microsoft Excel 2003 VBA pez beaucoup de programmes et que vous voulez gagner du temps en crant du code rutilisable, il vous faut organiser le code autour des lments constitutifs de votre environnement. Les programmeurs utilisant les langages procduraux tentaient de rsoudre le problme en reprsentant les lments de leurs environnements par des types de donnes abstraits. Ces derniers sont des ensembles de caractristiques et oprations qui retent les valeurs et les actions associes quelque chose que vous avez besoin de reprsenter dans un programme (un produit, par exemple). Par exemple, une jardinerie peut avoir un rayon couvert et une ppinire et il est possible dassocier les produits commercialiss lemplacement qui leur correspond. Le type de donne abstrait produit peut prendre des valeurs retant son nom, sa catgorie, son prix, son fournisseur, une description et ainsi de suite. Il est cependant important de savoir que le fait de dnir un type de donne abstrait pour reprsenter un produit ne cre pas demplacement o conserver ses valeurs et les actions qui lui sont associes. Il vous faut en effet crer une instance du type de donne abstrait pour y stocker les donnes et les actions associes la nouvelle marque dengrais que vous venez de mettre en vente dans la partie couverte de votre jardinerie. Cette instance doit avoir un identiant unique au sein du systme, comme par exemple produit001, et le programme est cens savoir que le nom du produit, sa catgorie, son prix, sa description et son fournisseur sont autant dlments lis ce produit spcique. Les types de donnes sont pratiques pour dnir des jeux de variables dans un programme, mais la structure sous-jacente des langages de programmation qui travaillent avec des types de donnes abstraits reste procdurale car il peut exister des routines rsidant lextrieur des types abstraits. Avec un langage orient objet, tous les aspects de votre code sont bass sur les lments de votre environnement. Ces lments , on ne stonnera point quils soient reprsents par des objets, et que toutes les actions et donnes soient encapsules dans ces fameux objets. Dans Excel, ces objets peuvent tre des classeurs, des feuilles de calcul, des plages de cellules, ou des chiers externes. En rgle gnrale, vous pouvez dvelopper un programme en vous penchant sur quatre aspects qui caractrisent les objets : les proprits ; les mthodes ; les vnements ; les collections.
Chapitre 3
PropritsEn un mot comme en cent, les proprits sont des variables qui dcrivent un asp