You are on page 1of 128
Travaux pratiques avec Excel 2007 et 2010 Fonctions avancées : traitement des données, travail collaboratif, Windows Live SkyDrive, VBA Fabrice Lemainque Toutes les marques citées dans cet ouvrage sont des marques déposées par leurs propriétaires respectifs, Mise en pages réalisée par ARCLEMAX Image de couverture : © AshDesign-Fotolia.com Ue pcogenme qi figs cicone denser! aptiny, malo ot epics. Sor cit en tsue Lal dt odes Ce re w 6 Be Cee sage emerge pares erecta Si ies Sera em eekvecnetee Hoenn Gonceeriiree pataencata pitas eres a ropes SE inte Tien eamare Seles plea ‘od orton Sektepmtret pho UUSLEGME) van, den dior ov de Pied moj cakc nose Gove mc oo Shen dey Or ce point de cape EC, 2 ne et fer gneclte cow er stitenom — GendrAugus, P3006 Fos © Dunod, Paris, 2012 ISRN 978-?-10-058044-6 le Cede de le propri6é inellecusle n’outrsont, ovx termes de Varicle L122:5, 2 et 3°), dune port, que les « capes au reproductions svictement ruber Y'v2098 priv cl copst a nan detingos une uation collective» fe, aur pon, que ls analyzes els courts cilaons dans un but exemple et dillsrotion, «Toute repréeenation ou reproduction intégrle ov pattll faite toms le consentoment de auleur ou de ses ayonts drot ov oyonis cause est ice » fort. L 1224), Cette repréentotion ov reproduction, por quelque procédé que ce et, constive- rait done une contelogan senctionsée por les ticles L 3352 et suivants di CCode de la propre ineectuell Table des matiéres Présentation des exercices... Md ‘Avant-propos vu Outils avancés de traitement des données [EF tnstataton du SoWveur 3 5 [Ep Uiisation du SobveU nnn a Affichage des solutions intermédiaires du Solveur... EJ Rapport du SOUP non [EJ Modite de probleme eee TE Aloorthimes de sein ds Salven 6 TE} Gestionnaire de scenario ae eae cn 7 {Ep Valeur ave... PB te de on. 3a) Utilitaire dan alyse..cnnsnn Travail en collaboration & Partage de classeur et protection du partage Zp Partage de classeur et protection du partage I. &) Gestion des commentaires. FED Suivi et gestion des mecitcatons des utisteurs { ) Suivi et gestion des modifications des utilisateurs 1D ...n.o0: &) Acceptation ou refus des modifications .. 3 ) Inspection d'un dasseur: &) Finalisation d'un classeur. & Protection d'un classeur... z } Protection de ensemble d'une feuille de calcul. &) Protection d'une partie d'une feulle de calcul & Afficher les relations entre formules et cellules. {Bp Aunentiier un assur, &) Envoi d'un dasseur par messagerie électronique... Windows Live SkyDrive } Windows Live : création d’un identifiant & ) Windows Live : stocker un dasseur 5; } Windows Live : ouvrir un classeur dans Excel Web App. 3: } Windows Live : créer un dlasseur dans Excel Wed APP smn. 3 } Windows Live : ouvrir le classeur dans Excel 33 } Windows Live ajouter une connexion réseau vers SkyDrive... 3; } Windows Live : partager un dossier 3: | Windows Live : partager un classeur. w 28 30 31 33 on 4 35 36 38 39 a1 43 wo AS AT AD 52 54 56 on ST 58 on 60 62 63 Macros et VBA (Visual Basic for Applications) &) Prérequis au travail avec VBA. 7 (EE) Ervegisrement une macro... &) Macro absolue ou relative... gy ‘Modification des propriétés d'une macro. 74 [E} Emplacement de stackage d'une macro. =} Exécuter une macro lors de fouverture du classeur. % ) Edition dune macro..... = } Editeur Visual Basic : fenétre Projet. FB Pescon dre mac &) Redaction d'une macro (I... [E.J Redaction dune fonction personnal. [Gc)) Création d'une procédure VBA pour un événement on 9 @} Liste des membres et Information rapide automatique 7 7 92 a Débogage... &) Compilateur VBA.......... [Ep execution pas pa (EJ Points darrét.... [EJ Fenetre Espions Z ; a 103, EE) Fenetre Exécution 105 (E) Ameioration dune fonction intégrée ce. 106 BB exnatinetnponten dunce de code 8 IO =) Création d'une interface utilisateur.. [E) Astuces de programmaton.. 116 IMEX sovnnsne 119 Copyright © 2012 Dunod. Présentation des exercices Windows Live = ouvrir le classeur FA dans Excel PY htc FTA ey hus © 2012 Dunod. Copyright we ence guerre Co St Sovee see et boneerge i a eran tense co vill Avant-propos Excel est une boite a outils presque universelle a laquelle de nombreux utilisateurs ont recours dans de trés nombreuses citconstances. Aprés avoir employé ce produit de facon traditionnelle, vous envisagez de passer a un emploi plus avancé : tel est le but de ce livre, Tout au long de cet ouvrage, nous supposons que vous maitrisez déja les techniques de base de Vutilisation aussi bien de Windows que ¢'Excel, et qu'une version d'Excel 2007 ou 2010 est deja installee sur votre ordinateur. Vous trouverez sur le site Dunod.com les fichiers dlexercices employés dans ce livre, que vous devrez télécharger et installer sur votre ordinateur. Je vous recommande de les intégrer dans un dossier dédié dans Documents, par exemple TP. 2012 Dunod. Copyright Outils avancés de traitement des données Excel propose plusieurs outils, souvent nommés outils danalyses de simulation, pour réaliser facilement des simulations ou trouver la réponse nécessaire a la résolution de problémes complexes. Parmi ceux-ci, le Solveur permet de trouver une valeur optimale (maximale ou minimale) pour une formule dans une seule cellule, appelée cellule objectif (autrefois nommé « cellule cible»), en fonction de contraintes ou de limites appliquées aux valeurs d’autres cellules de la formule dans une feuille de calcul. Le Solveur utilise un groupe de cellules, appelées variables de décision ou simplement cellules variables, qui interviennent dans le calcul des formules contenues dans les cellules objectif et de contraintes. Le Solveur affine les valeurs des cellules variables de décision pour correspondre aux ites appliquées aux cellules de contraintes et produire le résultat souhaité pour la cellule objectif. Excel 2010 propose une nouvelle version du complément Solveur Excel, qui permet deffectuer une analyse de scénarios sur vos données. Construction d'une bibliotheque (SSicrcctoicene Tomatescrouiees oe Ragga Typedagie | vwtew [nombre [weasels 90 ones [ies brches aol 3 | onamrenannaes] Lavees de poche al 3) a [cast 2] Cena consobstecedaoesparmave: liars ean [excomea ] re T Gal aeons [etutesvanabier Rombres | s0ss3085 ener! nate Tauern [st57 0 enor ees —[SOSSSGS6 CATERER || ints reson oes Sin se sumennsune | 50S53058>=1 st 708 ae Le Gestionnaire de scénario permet, comme son nom lindique, de comparer plusieurs scénarios, Cest-a-dire des ensembles de valeurs enregistrées par Excel. Vous pouvez créer et enregistrer les différents groupes de valeurs dans une feuille de calcul, puis passer d'un scénario a l'autre pour visualiser les différents résultats, a) or ry FS FS fo] a 4) vty a E F Ty = wu = = rm = a r=) a) a [] = = 4 ay = = =) fo] Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées ‘ironentde noes nppartae sya lerelevrates ‘estos orate oat electorate [a ete sen De Loutil Valeur cible permet de déterminer une (et une seule) valeur permettant d'aboutir a un résultat recherché dans une (et une seule) autre cellule. Trost | fwion Wrens Foran Denies Renae oS eee ieee Oa “e Oo fe Bree 2 mat Anahyse Cemprunt Tou 708 Moetant soon 00 Lorsqu'une formule a recours 8 un maximum de deux variables, ou si plusieurs formules se servent toutes d'une méme variable, une table de données permet diafficher tous les résultats en un ‘emplacement unique. ° = = = al > S PI FS a taal ay =) m 4 F ca =| i) = fait F4 a i=} Lal ay =} r=} F4 FS rm m ay Enfin, outil Utilitaire d'analyse, disponible dans le groupe Analyse de fonglet Données, regroupe de nombreuses fonctions statistiques complexes que vous pouvez appliquer 8 vos données a l'aide assistants. Certains outils générent des graphiques. Copyright © 2012 Dunod. Copyright © 2012 Dunod. Installation du Solveur Licomptsment Solveur nest pas install par faut vous deve le charger avant de pouvoir vous servir de ce précieux outil. Tel est objet de ce TP préliminaire, Prérequis : néant Fiehier employé :néant ‘Temps de réalisation: minutes my or TT] z z ro} a my vty (=) - =z 7] 7 | Ciquezsurfonglet Fiche, puis eiquez sur Options = wu = 4 E re @ Seems: Se w =e =" = r=) my arr 1S} = => 4 7 = = Cliquez 8 gauche sur la catégorie Compléments. Dans le volet de droite, en bas, dans la zone Gérer, cliquez sur 2 2 | Complements Excel, pus sur Attencre co} Eg semee ers ompenenstnss ome Travaux pratiques avec Excel 2007 et 2010 - Fonctions avancées 3 | Dans a zone Macros complementaesdsponbes,acivez ls case a coches Complement Solver, puis diquez sur OK. Cliquez sur Tonglet Données : vous voyez alors apparaitre & droite dans le groupe Analyse le bouton Solveur. 4 | Vous pouvez désormais employer ce précieux outa votre guise (RE aaa tenes ems J tome [me oa 2Osea ry — | Jestemes*| tout. S® Modifier les Rens | AP W Avance tes doublons S- | GEsous ° = = = al > S PI FS a taal ay =) m 4 F ca =| i) = fait F4 a i=} Lal ay 9 r=} F4 FS rm m tA) Copyright © 2012 Dunod. 1P ee 2 | Utilisation du Solveur L: solveur permet de résoudre des problémes complexes. Dans ce TP, nous supposons que vous woulez placer des étagéres pour créer une bibliothéque renfermant des bandes dessinées, des livres brochés et des livres de poche. Vous souhaitez pouvoir ranger un maximum de livres tout en mi Comment y parvenir ? Grace au Solveur... ant la place perdue, mais en occupant tout de méme le maximum de la hauteur disponible. Prérequis :TP 1 Fichier employé : P_02_début xlsx ‘Temps de réalisation + 10 minutes ‘Quvrez le fichier TP_02_debut.xisx et enregisireze sous le nom TP_02.xIx 1} Sous ronglet Données, diquez sur Solveur dans le groupe Anais. Dans la boite de dialogue Paramétres du solveur, dans 2 | ia zone Otyecif @ defini, salissez $E$7. Cliquez sur ‘Max, pour indiquer que ia valeur de la cellule object doit étre aussi élevée que possible (dans d autres cas, vous cli ‘queriez sur Min ou sur Valeur, en entrant dans le cas présent tune valeur dans la zone), Dans la boite de dialogue Poramétres du sotveur, cl 4 ‘quez sur Ajouter, puis, dans la zone Référence de cel- [ue sasiseez SES7, Cliquez sul relation <=et sez 240 dans la zone Contrainte > gee um vs Seto eee, saanee T" AL tw | pne fe lone saree BS | a OE F 2 ‘Construction dune biblathaque > TypesGagie | view [Nomis ier 5 lores ce pone a i 2] Dans la zone Ceilules variables, saisissez 3 | sngsg0s6 Cliques sur Ajouter. Dans la zone Reterence de 5] celle, saisssez $D$5:$D$6. Cliquez sur la relation ent et enter saffiche dans la zone Contrainte a) wi ry Fe F fo} a 4) wu (=) = F Ty = wu = < rr E ety r=) a) a uy E > 4 ay = = =) °o °o i= =I r= al > — > 4 a taal ay i] m = a ca =| i) = fait 4 = 9 Lal ay i] So 2 4 rm m ay Copyright © 2012 Dunod. Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Cliquez sur Ajouter. Dans la zone Référence de cellule, saisissez $D$5:$D$6. Cliquez sur la relation >= et saisis- 6 J sez'4 dans la zone Contrainte. ‘Vous pouvez & tout moment modifier ou supprimer une contrainte existante en diquant sur cele-c, puis en d- quant sur Medtfier ou Supprimer. oa seecwertaiton: canbe | errr eter Sena gee de een re rp ee, Sire toes Secther Sncororeen ccna ‘a _—— =| ‘Cliquez sur OK pour accepter la demiére contrainte et revenir & la boite de dialogue Parameétres du solveur. 7} Cliquez sur Résoucre ‘Construction d'une bibliotheque (Sfiaedetocene Tomes sconces hagpers Typedopte [stew [ vomive [ wtewroaie || 50 sone: resbochés 2c} | || ofa [onescepocte =| 3| us| [alata 20) Caan saneiate ecatgseranites Capa sine 2 =a eer tna [pmeonear avieoraie [S57 Fetes vanabir Nonbees | soss3005, een rae Feuer max 0 |ses7 <0 Torres erters | SOSSS0Ss CMT | cess en orton tests sarge sess ces surins one | SO5S0565e1 weve (tan me Observez les résultats puis, dans la boite de dialogue Résultat du solveur, diquez sur Rétabli es valeurs dorigine. 8 | Pour conserver les valeurs trouvées par le Solveur, il faudralt clquer sur Gardr fa solution ds sotveur. Enregistrez le classeur TP_02 et fermez-le si vous ne poursuivez pas avec le TP suivant. 2012 Dunod. Copyright Affichage des solutions 3 | intermédiaires du Solveur lest parfois intéressant d’examiner les solutions intermédiaires du Solveur afin de prendre exemple sur la facon dont celui-ci tente de résoudre le probléme posé. C'est ce que nous allons voir dans ce TP. Prérequis : TP 1 et2 Fichier employé : TP_03_débutxlsx tion :§ minutes 71] Sle dasseurTP_02 rest pas ouvert cuvez le ier TP_03_debutxlx. Enregitrez le caseur ac ous le nom TP_03.xlsx. Sous onglet Données, cliquez sur Solveur dans le groupe Analyse, puis sur Options, dans la botte de dialogue Paramétres du solveur. See ert (Zereniine B eetretentes Gwe any de rb me ene Siemtwes Sen meiezaton renee ne —_—_— Dans la boite de dialogue Options, cochez la case Afficher le résutat des trations, puis cliquez sur OK. exes estates |G rontinéir | Gln | clon es corr oot tereteasonston a) wi ry Fe F fo} a 4) wu (=) = F Ty = wu = < rr E ety r=) a) a uy E > 4 ay = = =) °o °o i= = r= al > — > 4 a taal ay i] m = a ca =| i) = fait 4 = 9 Lal ay i~] So 2 4 rm m ry 012 Dunod Copyright © Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées 3 | Dans la bote de calogue Raramétes du solveur chquez sur Résouce Ee ceo == | La boite de dialogue Afichage d/une solution inermeédiare qui apparait signale que la solution intermédire ac- 4 | swell est afichée sur la Feuille de calcul, Examinez-la, puis ciquez sur Continuer. Répétez lopération jusqu’’ ob- ten la Bote de dialogue Résultat du solveur. Cliquez Sur Rétab es volers cfongine, clique sur OK et ferme le dlasseur TP_03, es vl de aston actu srt aches srl fee de cl sete _| eeepc 2012 Dunod. Copyright 4 Rapports du Solveur Vous zosvezaénérer un rapport fond sur une solution identi pa le SolverSelon le type de probleme et les solutions identifiées, le Solveur peut proposer plusieurs types de rapports, ap- portant des informations complémentaires sur les résultats de l'outil. Prérequis : TP 1 et2 Fichier employé : TP_D$_débutxlsx tion :§ minutes ‘Qurez le fichier TP_O4_débutxlsx et enregisrez-e sous le nom TP_0A xlsx. 1} Giiquee sur la feulle Tous rapports. Sous Yonglet Données, diquez sur Solveur dans le groupe Analyse. Cliquez sur Résoudhe. Dans la boite de dialogue Résultats du solveur, 2 | dans la zone Rapport, toisrapports sont pro- posés: Reponses, Sensibilité et Limites, Cliquez SomNoSsmn sur Réponses, puis diquez sur OK. Omar ne a) or ry FS FS fo] a 4) vty a E F Ty = wu = = rm = a r=) a) a [] = = 4 ay = = =) fo] Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Le rapport est cré€ dans une nouvelle feuille de calcul. Vous pouvez, si vous le souhaitez, tester les autres types 3 | de rapport, mais Réponses est généralement le plus utle. Fr] acoso Gael i appr car rapone € [ica panes TE 7 ‘saitat Le Sour rows ne soliton de ombre ater dan pag de tolerance outs lor contrainte sot asain, 5. Moteurdusoleur Moteur: G86 nn inde 7. Weuredoisccluion: 007 rocondes. erations: 6Sous-problomes:6 9 Options du olvew 10, Temprma lite Méation lite, reion 0000 feelle atomique LL convergence 00, Tle a populition 0, Valeur despa slestore@, Odrves- Transfer Umer equses 12 _Sovrproblimesmaxilimte, Soltions de rome enter lit, Tolerance des nombres ees 1%, Suppasé non gat 1 cette ject ae 15 Celio iri 6 Ta genre nate ‘= m0 19 callus arable 2 2S Tes bdhes Nombe i Diner 22 5036 Les poche NOME 1 Ser a 4 | conranes 26 coke Nom ‘Valeur de cale Forme fot wage a Toa gona nate no sesre=n0 Ue ° 2s 50s Livres ches Nombre 250551 ponies 2 5056 Lites poche embre S061 Rone a0 s0ss0Sener Cliquez sur la feile Un rapport, puis répétez 4 | es stapes 1 et 2 : seul le rapport Réponses est °o i= =I r= al > — > 4 a taal ay i] m = a ca =| i) = fait 4 = 9 Lal ay i] So 2 4 rm m ry Droposé, en raison de la contrainte Entier appli ISieeecscr oat econo gpa quée aux cellules variables. Les rapports disponibles, oe = i dépendent du type de probleme. Si le Solveur ne eet trouve pas de solution. il se peut qu’aucun rapport ne i ae re soit disponible. Enregistrez et fermez le classeur TP_04.xisx. Ob “ss Ciieosiosla a] earnest Ci enoe tempor ecto eset Copyright © 2012 Dunod. 10 2012 Dunod. Copyright Modéle de probleme lest parfois intéressant de pouvoir enregistrer un modéle de probléme pour pouvoir le réemployer jultérieurement ou pour comparer des résultats obtenus en modifiant certains paramétres. Dans ce TP, nous allons émettre I’hypothése que la hauteur totale occupée par la bibliothéque peut étre changée. Prérequls : TP 1 et Fichier employé : TP_05_d6butxis« ‘Temps de réaisation : 10 minutes ‘Ouvrez le fichier TP_05_début.xlsx et enregistreze sous le nom TP_05.xisx 11} Sous ronglet Données, diquez sur Solveur dans le groupe Analyse. Dans la boite de dialogue Rorametres du Solveur, diquez sur Charger/enregiste. werden: << io} ‘seroreereter entrance rene ae eo ‘Sesion Der Snes pr tnoesenrbaar oem mee stamens Dans la boite de dialogue, dans la zone de modéle, 2 | saisisser $8$48, puis diquez sur Enregstrer. Lorsque vous enregisrez Un modele, la référence dot étre la premiére cellule d'une plage vertical de celules vides W a) or ry FS FS fo] a 4) vty a E F Ty = wu = = rm = a r=) a) a [] = = 4 ay = = =) fo] Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Le modéle apparait dans votre feulle de calcul a emplacement spécifié. Dans la boite de dialogue Parameétres du 3} solveur, ciquez sur la contrainte de la cellule $€817, puis sur Modif. livres epoch matic: A me om tae ® Tae sae ck las arabe ween ol — va Coeree va (_+| (qm) = Tieden manner lz ° Se een ecrnniee 5) (rage ‘Sesser tn Soe parr poboes anes on ns core at soars TL oo aa S| (tt) Catia Modifiez la valeur en 225. °o i= =I r= al > — > 4 a taal ay i] m = a ca =| i) = fait 4 = 9 Lal ay i] So 2 4 rm m ry Copyright © 2012 Dunod. 12 TPS « Modéle de probleme Cliquez sur Charger/enreaistrer. Dans la boite de dialogue, dans la zone de modéle, saisissez $D$18, puis cliquez 5 | surEnvegistrer. Le modele apparait dans votre feuille de calcul & femplacement indique. Dans la bote de dialogue Porametres du solveur, ciquez sur Résoucre : vous obtenez la solution pour cette nouvelle hauteur. 2 Construction d'une bibliotheque 6 Leese poche 2h 3] ‘al Bi [eure za io [Genmeamear Tamera [557 ht cette vrabier Nemes | s0ss055 a [ont Taateur aed [57 210 a Nembros enters | S0si5s ENT erie ue “unoisupe | S0S5S056>=1 Dans ia boite de dialogue Poramétes dy sob 6 | veur, ciquez sur Chargerlenregstrer. Lorsque vous chargee mn ode, vous devez inciquer la plage de cells contenant le modele de probleme Dans a bote de dalogue, dans la zone de modtle, seisasez $B§%8:$B§24, pis ciquea sur Charger. a) wi ry Fe F fo} a 4) wu (=) = F Ty = wu = < rr E ety r=) wn a uy = > 4 Aa] = = =) °o Une boite de dialogue apparait vous deman- dant si vous voulez remplacer ou fusionner le modeéle chargé avec le modéle actuel. Cliquez sur Remplacer (Fusion pourrait étre un moyen dintro- duire des contraintes complémentaires, mais elles sont ici contradictoires). 2012 Dunod. Copyright 13 Travaux pratiques avec Excel 2007 et 2010 - Fonctions avancées Vous voyez dans la boite de dialogue Porameétres du solveur que Fancienne contrainte est de nouveau présente 8 | Cliquez sur Résoucre, pus sur Conserve les résultats du solveur pour revenir aux résultats du premier modéle. [igirihtines Serenpornseecrewe weno caer ms poe rs i Cette (mee) Fermez et enregistrez le classeur TP_05.sisx. Lors dun enregistrement, une feuille de calcul comprend les demiéres sélections effectuées dans la bote de dialogue Paramétres du solveur en enregistrant le classeur. Chaque feuille de calcul d'un classeur peut posséder ses propres séiec- tions de Solveur. °o i= = r= al > — > 4 a taal ay i] m = a ca =| i) = fait 4 = 9 Lal ay i~] So 2 4 rm m ry 012 Dunod Copyright © 14 2012 Dunod. pyright Cor TP * ‘ . 6 | Algorithmes de résolution du Solveur e solveur dispose de trois algorithmes de résolution disponibles, a employer selon le type de pro- bléme a résoudre, que ce TP va présenter. Le choix de l'algorithme joue sur la pertinence de la solution identifiée, ainsi que sur le temps de résolution. Prérequis : TP 1 ot2 TP_05_déhutxisx ‘Ouvrez le fichier TP_06_débutxlsx et entegistrez-e sous le nom TP_06xIsx 1} Ciquez sur la feille Linéaire. Sous fenglet Données, ciquez sur Solveur dans le groupe Analyse. Dans la boite de dialogue Porametres du solveur, diquez sur la feche située a cOté de Sélect. une résolution pour ouvrr le menu deroulant. Le probleme est ici de type linéaire (comme la formule dela cellule objecti :choisissez Simplex PL, puis ciquez sur Résoudre eomataite A owe 15 a) wi ry Fe F fo} a 4) wu (=) = F Ty = wu = < rr E ety r=) a) a uy E > 4 ay = = =) °o Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Cliquez sur la feuile Non néaire. Sous ronglet Données, diquez sur Solveur dans le groupe Analyse. Dans 2 | laboite de delogue Paramétres du solveu, ciquez sur la fl¢che située & cOré de Sélect une résolution pour faire apparaitre le menu déroulant. Le probleme rvest pas cette fois-i de type linéaire (des formules du tableau emplorent des instructions S10): choisssez GRG non hnéare, puis dique2 sur Résoudre. Cliquez sur la feulle Evolutionnaire. Choisissez & présent une résolution de type Evolutionnaire, puis di- 3 J quer sur Résoudre i | °o i= =I r= al > — > 4 a taal ay i] m = a ca =| i) = fait 4 = 9 Lal ay i] So 2 4 rm m ry ‘Une boite de dialogue s‘affiche signa- 4 | lant que re tyne de récaliitian ne pet fire employe quiavec des celluies va riables dotées de bornes maximales et mii I males. Aioutez la contrinte $C$6:SES6 ee <+50000, puis cique? sur Resoudre Oneness Le type Evolutionnare est réserver des cas complexes, lorsque les autres types s/avérent inadaptes ou sans résuitat. Decors arsinbteseasieerwentves Clsceaneaes Copyright © 2012 Dunod. 16 yright © 2012 Dunod. Cor Gestionnaire de scénario In scénario est un ensemble de valeurs enregistrées par Excel. Vous pouvez créer et enregistrer différents groupes de valeurs dans une feuille de calcul, puis passer d’un scénario a autre pour visualiser les différents résultats. Un scénario accepte un maximum de 72 variables. Pour ce TP, nous allons comparer deux budgets prévisionnels : le maintien d'une situation actuelle, avec quelques augmentations de certains postes, et une promotion assortie d’un déménagement dans un domicile plus grand, situé plus prés du lieu de travail, ce qui entraine la variation de certains postes. Au final, quelle solution entraine un accroissement des revenus dispo! les? Prérequis néant Fichier employé : TP_07_débat.xiss ‘Temps de réaisation : 5 minutes ‘Quvrez le fichier TP_07_débutxlsx et enregistrezle sous le nom TP_O7xIsx. 1} Cliquez sur Anaiyse scenarios dans le groupe Outs de données de Fonglet Données, puis ciquez sur Gestionnare de scénarios, seme | eee WE | Sco] on SER asec 2 | Danse bote de calogue Gestonnate de scénanas qui sache, ciquez sur Aouter. 7 a) or ry FS FS fo] a 4) vty a E F Ty = wu = = rm = a r=) a) a [] = = 4 ay = = =) fo] Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Dans la boite de dialogue Ajouter un scénaro,sisissez Hypothése 1 dans la zone Nom du scénario, puis saisis- 3 | sez $$4:$C$8 dans la zone Cellules variables. Cliquez sur OK. Dans la boite de dialogue Valews de scénario, vous voye2 saicher les valeurs actuelles de chaque cellule variable. 4 | Saisissez les valeurs présentées dans la figure ci-dessus, puis ciquez sur Ajouter. Dans la bote de dislogue outer un scénario,saisissez dans la zone Hypothése 2 Nom du scar. La zone 5} Ceutes varobles est deja remple. Cliquez sur OK. °o i= =I r= al > — > 4 a taal ay i] m = a ca =| i) = fait 4 = 9 Lal ay i] So 2 4 rm m ry Copyright © 2012 Dunod. 18 Copyright © 2012 Dunod. 1TP7 « Gestionnaire de scénario Dans la boite de dialogue Valeurs de scénario, 6 | vous voyez toujours les valeurs actueles de chaque cellule variable. Saisissez les valeurs Drésentées dans la figure cicontre, puts chquez sur Ok. Vous revenezala boite de dalogue Gestonnaire 7 | ce scénaros, présentant les noms de vos deux ScénariosA Taide des boutons de droite, vous pouvez modifier, supprimer ou ajouter un autre cena fio, Cliquez sur Synthese, Dans la boite de dialogue Synthese de scéna- 8 | ros, saisissez €9 dans la zone Cellule résut- ‘ante, puis ciquez sur OK. La Synthese de scénarios satfiche dans une nouvelle feuile, comparant les différents scénarios par rapport & la 9 | situation originelle. Enregistrez-la et fermez le classeur TP_07. {a clenne Vetus aisle aiene Tes leurs des coTTezvaales ‘aumement ea réston du rapor de sytese Les celles anaes (de cnaque cena sestuent cans es colones ges. FCP Sythe de scfnanos Fel Fe ne 19 a) wi ry Fe F fo} a 4) wu (=) = F Ty = wu = < rr E ety r=) wn a uy = > 4 Aa] = = =) °o ° = = = al > S PI FS a taal ay =) m 4 F ca =| i) = fait F4 | i=} Lal ay 9 r=} F4 FS rm m tA) 2012 Dunod. pyright Cor 20 Valeur cible ‘outil Valeur cible permet de déterminer une (et une seule) valeur permettant d’aboutir 8 un résul- tat recherché dans une (et une seule) autre cellule. La cellule résutat peut renfermer une formule fondée sur de nombreuses cellules, mais, contrairement au Solveur, une seule cellule peut étre ici considérée comme cellule variable. Dans ce TP, nous cherchons a savoir sur combien de temps nous devons emprunter 10 000 € au taux de 7 %, en tenant compte d’une possibilité de remboursement maximum mensuel de 750 €. Prérequis:néant Fichier employé : 1P_08_ début-xlse ‘Temps de réalisation + 10 minutes Quyrez le fichier TP_08_débutxisx et enregistrez-le sous le nom TP_OBxIsx. 1] Ciguez sur ronglet Données. Dans le groupe Outis de données, ciquez sur Analyse de scénaras puis sur Valeur Tucerpee femae | bowser | Rewen aneae 2Ose8 om Y < Paso Ah wr rm & am =| Dans la boite de dialogue Valeur cible, sasissez €6 dans la zone Cellule @ défnir, -750 dans la zone Valeur @ at- 2 | teincre inégait, car Cest un remboursemend et €4 dans la zone Cellule & moditer. Cliquez sur OK. Copyright © 2012 Dunod. ‘TP8- Valeur cible Une boite de dialogue présente (parfois trés briévement) les différentes itérations avant d afficher une autre borte de dialogue indiquant le succes ou échec de opération. Le résultat trouve est affiché sur la feuille de calcul Enregistrez et fermez le classeur TP_OB.xlsx. x ‘Menta tt Durée (mois) ‘ave Nersaie——[———ed 21 a) wi ry Fe F fo} a 4) wu (=) = F Ty = wu = < rr E ety r=) a) a uy E > 4 ay = = =) °o ° = = = al > S PI FS a taal ay =) m 4 F ca =| i) = fait F4 | i=} Lal ay 9 r=} F4 FS rm m tA) 2012 Dunod. pyright Cor 22 TP t .9 | Table de données orsqu’une formule a recours a un maximum de deux variables, ou si plusieurs formules utilisent toutes une méme variable, une table de données permet dafficher tous les résultats en un empla- cement unique. Les différentes valeurs des variables sont présentées en lignes et colonnes, avec les différents résultats apparaissant ainsi dans le tableau automatiquement créé. Prérequis:néant Fiehier employé : TP_09_début-xsx ‘Temps de réalisation : 10 minutes Ouveez le fichier TP_09_début.sx et enregisrezte sous le nom TP_O9 xlsx 11} Dans cet exemple, la cellule 03 contient la formule =VPM(CA/12,€5;-C6). Les valeurs variables sont celles des celles C4 et C5. = Baraca a et J] Sssisez dns lage D406 kes tux 0,065,007 «0.75 Taal Tera ss27€ iat 70% ook Duce 2 20% Montant 100,00 ef 7.53] J] Sssisez dsl plage £46 ieee dures, sot 10, Be feria ie 78s » a4 coe =a eee wim ——P Copyright © 2012 Dunod. TP9- Table de données Sélectionnez la plage D3:G6. Dans le groupe Outis de données de Yonglet Données, ciquez sur Analyse de scé- nari, puis sur Table de données. Bs my to | Scone 97 sn kL mer re Come sipteeitg| Somme” tem | 2 Ym CRESS Glsootas ' ouleecentdd Senemere scare 2 — nats tempt = Montant__100ra00¢ Dans la zone Cellule cfentrée en lignes, saisissez C5. Dans la zone Cellule c'entrée en colonne, saisissez C4, Cliquez sur OK. La table de données affiche les résultats recherches. Toutefois, le format de sortie n'est pas forcément le format adapté, comme Cest le cas ici. Reale tempt arte Monta 1000000 Sélectionnez la plage E4:G6, puis, dans Yonglet Accueil, dans le groupe Nombre, cliquez sur Format nombre ccomprabilté. Enregistrez puis fermez le casseur TP_09.xlsx Freer sperm” 2 Anatyedtempeant 23 a] a7 pe F 2 Lo] a 4) ry a [= Fs rr = aay = 4 rs [= wu r=) wn rT y Fe = 4 Aa] = = =) fo] °o i= = r= al > — > 4 a taal ay i] m = a ca =| i) = fait 4 = 9 Lal ay i~] So 2 4 rm m ry 2012 Dunod. pyright Cor 24 TP iy) Utilitaire d‘analyse Le d'analyse, disponible dans le groupe Analyse de Yonglet Données, procure Vaccés a de nombreuses fonctions statistiques parfois trés complexes que vous pouvez appliquer & vos don- nées & V'aide d’assistants. Certains outils générent des graphiques. Si vous étes amenés a appliquer réguligrement des fonctions statistiques de haut niveau a vos données, cet utilitaire se révélera d'une aide inestimable. Dans ce TP, nous allons tester deux de ces outils, appliqués a une consommation délectricité st moyenne mobile et les statistiques descriptives, ‘depuis plusieurs années. Prérequis:néant Fiehier employé : TP_10_débutxlsx ‘Temps de réalisation : 10 minutes 7] Quvtez le dasseur TP_10_debutxisx et enregistezle sous e nom TP_10xis% Cliquez sur Fonglet Fichier, diquez sur Options, puis sur la catégorie Compléments. Dans la zone Gerer, sélection ez Complements Excel, puis clique sur Atteindre tat Li) sensor os omplaments Micros of, eaten amon ano Ct SAVERSOUERIUM Cope Be ew: [pees 5 (Snag) Copyright © 2012 Dunod. TP10+ Utiltaire d’analyse Dans la zone Macros complémentares daponbles, co 2 | chez Analysis ToolPack Si vous souhaitez employer ces fonctions dans du code VBA, cochez également ‘Analyss ToolPack -VBA. Ciquez sur OK. Cliquez sur Fonglet Données. Dans e groupe Anaise, [Sam 3 | ciquez sur Uiitare danayse. oe La boite de dialogue Utiitare cfanalyse saffiche. 4 | Chosissez Statistiques descriptives, puis ciquez sur OK, 2iieamen | =! ———— Dans la boite de dialogue Statistiques descrptives, sé- 5} lecionnez dans la zone Plage cenirée la plage $B$2:$B$120, définissez dans la zone Plage de sortie 2, et cochez Toption Rapport deétailé. Ciquez sur OK. a) wry La FS rs So a 4) uu (=) = F4 rr = rT} = 4 rr e ety r=) wn a uy FE =] x Aa] — E =) fo) Les résultats saffichent dans la feulle de calcul, Dans le 6 | groupe Analyse de fonglet Données, diquez & nou- eau sur Uniiiaire dfanabse. Sélectionnez cette fois dans la boite de dialogue Utiftare cfanalyse loutil Moyenne ‘mobile, puis diquez sur OK. 25 Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Dans la boite de dialogue Moyenne Mobile, sé- 7} lectonnez dans la zone Plage dentrée la plage $B§2:$B$120, spécifiez un intervalle de 6, définissez G2 dans la zone Plage de sortie, et cochez option Représentation graphique. Cliquez sur OK. B | bss stats ins qu'un sraphiaue, safchent dans la feuile désignée, Le araphiaue rest toutefos ci pastes lisible mus mis min min min orem am oes ss sess? 100285533 ouggam03 03833 Modiez le graphique 2 votre gout. Vous pourrez, par exemple, opter pour une présentation comme celle figu- 9 | rant dans cette copie d'écran. ° = = = al > S PI FS a taal ay =) m 4 F ca =| i) = fait F4 a i=} Lal ay 9 r=} F4 FS rm m tA) 012 Dunod Copyright © Enregistrez et fermez le classeur TP_IOxIsx. CChacun des outiis de [Utiitaire &'analyse propose généralement des assistants. La place manque dans cet ouvrage pour décrire en detail ces puissants outils: reportez-vous a la documentation si nécessaie. 26 Travail en collaboration Mémesi une seule personne peut étre chargée de gérer les données d'une entreprise, d'un organisme ‘ou d'une association, plusieurs personnes sont concernées lorsquill sagit d’établir des projections. Il est possible denrichir les données d'un classeur partagé en ajoutant des commentaires qui mettent en lumiére des informations. Si le classeur qui héberge ces projections et commentaires est disponible sur un réseau ou dans un Intranet, plusieurs utiisateurs accedent simultanément au classeur en activant le partage de classeur. Une fois le classeur partagé avec vos collaborateurs, annotez-le et enregistrez-y tous les changements apportés. Uadministrateur du classeur opte alors pour les changements & accepter et a refuser. 1 |racion [loste _=|newe(=louh Tisiiman 1126 rebree Chagemert de celle Fev Fis/ia/mis 136 rates Changemert de ale Eh NNowelle_Ancenne ype _Perte [Feat =[ouge =steu—[z[uleur [=acton|=]@acton|= =[Moditstion historique termine avec as modiicatons eves su 2/12/0119 1.26, yw rau ator 23" Pe 2 ° Ee 4 -4 fo} ca < = a fe} u 4 rT} = < I~ a De ne Si vous préférez limiter le nombre dutilisateurs susceptibles d'afficher et de modifier vos classeurs, ajoutez un mot de passe au classeur, 2 a feuille de calcul, 8 la plage de données ou méme 3 une cellule individuelle. Vous évitez ainsi que des éléments cruciaux soient modifiés. Il est également possible de masquer des formules. = = : tonations Si vous travaillez dans un environnement comprenant des collaborateurs itinérants avec lesquels vous échangez fréquemment des fichiers, utilisez une signature numérique pour vérifier que vos classeurs et les macros quils contiennent proviennent d'une source de confiance. SEER cams ere dpeureneroastavete, [lsestetircenene Geb) 27 | 5 5 r ful P—4 a fe} é rc > a fe) J = ce} P—4 28 lls Partage de classeur et protection du partage (I) Pour zucrse: plusieurs utilisateurs & modifier simultanément un classeur, vous devez activer le partage de classeur. Vous pouvez ensuite interdire la désactivation du suivi des modifications d'un classeur partagé en protégeant le partage Vhistorique des modifications apportées au classeur sera toujours visible. Il est impossible de partager un classeur contenant un tableau Excel : vous devrez auparavant convertir ce tableau en plage de cellules standard. Prérequis: née Fichier employé : TP_1_début.xls« ‘Temps de réalisation: 5 minutes Ouvrez le dasseur TP_11_début.xlsx, puis enregistrez-le sous le nom TP_11.xlsx. 1] Ciquez sur ronglet Révsion, pus, dans le groupe Modifications, cliquez Sur Partager fe casseur. A oo Pa or 7 enh 2 re a Eireann roars negeen a (Be Sem Simawinatnemmmtier | Greig come ronan heaton spn Scorsese, a AN] er er omemen Dans la boite de dialogue Options de partage du fichier, cochez la case Permettre une modification mult-utiisateur. 2} Cliquez sur ronglet Avance de la boite de dialogue Options de partage du fichier. S| J 2012 Dunod. pyright Cor TP11 « Partage de classeur et protection du partage (1) Cet onglet renferme plusieurs paramétres importants. Le Suvi des modifications définit si Excel conserve thisto- 3 | rique des changements apportés au dasseur et a durée de cet enregistrement. La valeur par défaut est de 30 jours. La ise a jour des modifications defint le moment de mise a jour du suivi et la possibilté de suivre ou non vos propres modifications. Le parametre én cas de modthicatons contracctores concerne latitude & adopter en parell «as. Si vous etes confrontés a ce risque, cochez la case Demander confimation chaque fos pour chosir fa valeur @ conser- ver. Cliquez sur OK. 1 gene art a © Grae cleats eee User rnen Epelereap Une boite de message siffche. Cliquez sur OK. Excel enregistre et partage le dasseur. Cliquez sur fonglet 4 | Revision, puis, dans le groupe Modifications, cliquez sur Protéger le classeur partogé: ar a rege Dans la boite de dialogue Protection ors du partage, cochez option Partage avec sui des modifications. Cela rend 5} impossible la suppression du suivi des modifications par Vutiisateur Enregistrez et fermez le casseur TP_Ii. 29 2 ° Ee 4 -4 fo} ca < = a fe} u 4 rT} = < I~ a | 4 5 — m P a fe} 4 rc > tJ fe) rs] = ce} 2 30 lls Partage de classeur et protection du partage (Il) a méthode précédente présente inconvénient de laisser 8 un utilisateur la possibilité de sup- primer facilement cette protection, puis de désactiver le suivi des modifications. Pour linterdire totalement, vous devez accomplir les deux démarches précédentes en une seule opération, ce qui permet en outre de définir un mot de passe pour outrepasser éventuellement la protection. Fichier employé : TP_12_ début-xlox ‘Temps de rélisation: 5 minutes Ouvez le dlasseur TP_12_début et enregistrez-le sous le nom TP_12.xIsx. 1} Dans ie aroupe Modifications de Fonglet Revision, ciquez Sur Protéger et partager le casseur. aor | ae 2028] Dans la bote de dialogue Protection lors du partage, coche? "option Rartage avec suv des medications. Dans la 2} zone Mot de passe, sasisez motpasse (ou le mot de passe de votre cho’) et ciquez sur OK. Dans la boite de dlalogue Confimer le mot de pase, saisissez le mot de passe que Vous avez chois t ciquez sur OK, Une boite de message “affiche. Cliquez ur OK, Excel enregistre ct partage le classcur TP_12.xlex 3 | Fermez le dasseur TP_12.xisx. TP = . 13} Gestion des commentaires ‘insertion d’un commentaire dans les cellules d'un classeur peut améliorer la compréhension des données. Une cellule comportant un commentaire affiche un indicateur dans l'angle supérieur droit de la cellule. Lorsque vous survolez avec la souris une telle cellule, le commentaire s'affiche & proximité de celle-ci, avec le nom de l'utilisateur connecté du commentaire. Prérequis:néant. jer employé : TP_13, débatxlsx. ‘Temps de réalisation + 5 minutes ‘Quyrez le classeur TP 13_débutxise, puis enregistre-e sous le nom TP_13.xisx. 1} iquez suri cetule C5. Dans Fongiet Revision, groupe Commentaires, cliquez sur Nouveau commentaire. FormuiesOonnier | Revcon | atienage a a a ‘Spammer tose commentaes 2a 5 savenerie ener manuseter Unindicateur de commentaire rouge saffiche dans la cellule C5 et une zone de commentaire apparait proximité 2 | dela cellule. Dans la zone de commentaire, tapez Peut-étre un peu trop pessimiste, non ? Nord Région Est [Pessmiste] aaa ral Joroduit a 200000€T 4peut-étre un peu trop s0c00.€ [produite| 50000 | pessmste, non | fsoccoe loroduit c| 75.0006 000 €| Cliquez sur une cellule en dehors de la zone de commentaire. Cette derniére disparelt, Seul subsiste lindicateur 3 | rouse. a nagen st Fezanite| opti lroaaiea) aooeone] zzsco0e| 20000¢ | oon scove | acoowe| soorce| cocone ————__ 31 2 ° Ee 4 -4 fo} ca < = a fe} u 4 rT} = < I~ a | 4 5 rr m P a fe} 4 rc Pd tJ fe) rs] = ce} 2 32 Travaux pratiques avec Excel 2007 et 2010 - Fonctions avancées 5 Cliquez sur la cellule C5, puis sur onglet Révision et enfin, dans le groupe Commentaires, diquez sur Alfcher/ -masquer le commentaire. a & @ > mae eed Le commentaire apparalt de facon permanente, Cliquez & nouveau sur le bouton Afficher/masquer fe commen- {aire pour le faire disparaitre, Si le dasseur comportait plusieurs commentaires, vous les affcheriez tous en cliquant sur Afficher tous les commentares, Fagen st pete un pu trop [290 fcaute| sooone| Jpsssmets, mon?” [noon e| Cliquez sur la cellule C5. Dans fonglet Révilion, dans le groupe Commentaiies, diquer sur le bouton Modifier le ‘commentaire : vous pouvez modifier le commentaire "Z onmegaote Beamon met teinaeere comers Pant smarts conmerttes Cliquez sur la cellule A1, puis sur la cellule C5. Cliquez sur Supprimer dans le groupe Commentaires de Vonglet Réusion. i eee Excel supprime le commentaire de la cellule. Lindicateur rouge a disparu, Fermez le dasseur TP_13xisx. lis Suivi et gestion des modifications 14} des utilisateurs (I) 25 que vous collaborez avec plusieurs utilisateurs pour générer ou modifier un document, il est pertinent de suivre les modifications apportées. Une fois le suivi des modifications activé, tout changement apporté au classeur est surligné dans la couleur attribuée 4 l'utilisateur concerné. En cas de doute sur un changement, vous identifiez rapidement son auteur et pourrez juger de la per nence de la modification apportée. Prérequis:néant ir employ ‘Temps de réal TP_14_débutxlse 5 minutes ‘Ouvrez le classeur TP_14_début et enregistrez-te sous 1) le nom TP_14.xisx Dans le groupe Modifications de ‘onglet Revision, diquez sur Suivi des modifications, puis sur Afficher les ‘modifications. Dans la boite de dialogue Affcher les modifeations qui 2 | souvee selecionnez Suive les modifcations au fur et 6 ‘mesure, puis verifiez que Foption Le est fixée & Tous, 2 ° Ee 4 -4 fo} ca < = a fe} u 4 rT} = < I~ a Usnre edBopr wf etbnere nce wn Cliquez sur OK Penerete = tet Ton 5 ee i=} lie wages arene ne ee Cs) Ceme] Une boite de dialogue signale quiExcel va enregistrer 3 | te classeur. Cliquez sur OK. Dans la cellule C5, ta pez 115000 et appuyer sur Entrée. 4 | gauche de la cellule C5. Dans la cellule DS, ta | a Ber 180000 soy? Ene : cae ne PT cepa —____ vez pas immédiatement avec l’exercice suivant. 4 [Pessimiste] Optimise) Pessime[ Optste| (ESS (ie Jrrocuitb| sooooe [ eo00oe | ancone| enonoe| 33 | 4 5 — m P a fe} 4 rc > tJ fe) rs] = ce} 2 34 Suivi et gestion des modifications 15} des utilisateurs (II) I existe un moyen d’obtenir rapidement une synthase de toutes les modifications apportées. Prérequis : TP 14 Fichier employé : TP_15_début-xsx ‘Temps de réalisation : 5 minutes nom TP_1Sxisx. Dans onglet Révision, groupe Modifications, cliquez sur Suivi des modifications puis sur Afficher les modifications. gD renner 2A sot curtis noaitene Dans la boite de dialogue Afficher les modifica- 2 | tions, cochez la case Lister les modifications dans tune autre feuile, décochez loption Le et ciquez sur OK. la derniére fos qu'un utiisateur a accepté ou refuse des changements. Tss/izfon 1126 Face changement decalle Feulll cs n150m60€ IcoODHse€ 2 1/i/z011__1:26 Fabrice Changementse ale Feil 05 190000,00€ 120008006 LUvstonque termine avec les moifiestons eoepisdes su 19/12/2011 11:26. Fee | wetonave 3 Hat a [aes 7] Sie casseur TP_14.xsc est pas ower, ouwez le dasseurTP_15.débutxlsx, Enegistre le classeur ai sous le 3] Exceeée et acne une eile initulée Historique qui content ase de toutes es meaficatonseffectées depuis Cliquez sur le bouton Enregstrer de la barre Zo 4} coutis rapide. Excel supprime la feulle Historique et enregistre le claseur, Accu Laissez le dasseur ouvert si vous poursuiver immécia tement avec le TP suivant. Sinon, fermez-e. TP '16) modifications Acceptation ou refus des A’ avoir activé le suivi des modifications, vous pouvez les accepter ou les refuser. Prérequis: TP 14 ct 15 Fichier employé : TP_16. début lox ‘Temps de réalisation + minutes ‘nom TP_16.xix. 7 | Sle dasseur TP_15.xise n'est pas cuver, ouvrezlecasseur TP_16_débutxlsx.Enregistez le casseur act sous le Dans onglet Révision, groupe Modiications, cliquez sur Suivi des modifications puis sur Accepter ou refuser les ‘modifications. SRE Lpsomermesnaen La boite de dialogue Sélection des modifications @ ac- 2 | cepter ou retuser satfiche. Cliquez sur OK. La boite de dialogue Accepter ou refuser les mocifica- 3} tions présente le premier changement. Cliquez sur Accepter. Excel accepte la modification et affiche la suivante Cliquez sur Accepter. Excel accepte la modification. La 4 | boite de dialogue Accepter ou refuser les modifications isparait. Si elle était affichée, la feuille Historique serait supprimée. Enregistrez et fermez le dasseur TP_16. xlsx 35 2 ° Ee 4 -4 fo} ca < = a fe} u 4 rT} = < I~ a | 4 5 — m P a fe} 4 rc > tJ fe) rs] = ce} 2 36 ion d’ 17} Inspection d’un classeur istribuer un classeur a d’autres personnes n’est pas sans danger : le classeur pourrait renfermer des informations privées que vous ne souhaitez pas partager. Grace a I'Inspecteur de document, vous pouvez rapidement repérer commentaires et notes, propriétés du document et personnelles, données XML personnalisées, en-tétes et pieds de page, colonnes et lignes masquées, feuilles de calcul masquées et contenu invisible. Vous pouvez facile ment supprimer toute informa- tion identifiée par Inspecteur de document. Prérequis:néant Fichier employé : 1P_17_début.xlsx “Temps de réalisation : 5 minutes Quyrez le dlasseur TP_17_début.xlsx et enregisirez-le sous le nom TP_17.xlsx. 1} Ciquez sur fonglet Ficher. Sur la page informations, ciquez sur Vérifer la présence de problemes, puis sur Inspecter le document. amorimer repo sant de patager efi, able pa corti: Copyright © 2012 Dunod. TP17 = Inspection d'un classeur Dans la fenétre de l'inspecteur de document, vous décochez tous les types de contenu qui doivent rester dans le 2 | document. Laissez-es ici tous cochés, puis ciquez sur inspecter. Par ceowlecrtenseeoré dreecounet, aneree oe “1 monte dcmea cerns erste ‘fotos tertoarvarenanqae overtone pene erent nie 1 amass pesomatstes 1 totter pede page pes et cence Fees dec caches ‘cnr ool ns ch re sii or enn me Sinaia Scrraieas ajar eee oral Dans la liste des résultats de inspection, diquez successivement sur le bouton Supprimer tout situé & droite des 3 | categories de données que vous voulez supprimer. Une fois les données indésirables supprimées, ciquez sur Fermer Enregisiez et fermez le dasseur TP_I7xIsx. 37 2 ° Ee 4 -4 fo} ca < = a fe} u 4 rT} = < I~ a | 4 5 — m P a fe} 4 rc Pd tJ fe) rs] = ce} 2 38 Mees. un classeur comme final fixe sa propriété d’état a Final et empéche toute modification lultérieure effectuée par inadvertance. ‘employé :TP_18 ¢ ‘Temps de réalisation : 5 minutes uvrez le dasseur TP_18_débutxisx et enregistrez le sous le nom TP_18xIsx 1] Ciquez sur ronglet Ficher, puis, sur la page dnformations,cliquez sur Protéger le casseur, et enfin sur Marquer ‘comme final Dans la boite de message indiquant que le classeur va étre marqué comme final puis enregistré, diquez sur OK. 2 | Une nouvelle boite de message s afiche pour confirmer votre choix. Si tel est le cas, iquez sur OK. ‘gnsereteneedcome ttt pt it ten fa tines omen tn tr ee) Cliquez sur Fonglet Ficher, puis sur la page Informations : vous voyez que le classeur est marqué comme final 3} Pour restaurer les fonctionnalites d'un classeur marqué comme tel, dique2 sur Yonglet Fichier puis, dans la page Informations, cliquez sur Protéger le classeur puis & nouveau sur Marquer comme final pour modifier son état Fermez le dasseur TP_18.xlsx. Informations sur TP_17 TP : : 119} Protection d’un classeur Ve: limitez 'accés aux classeurs ou a ses éléments a l'aide d’un mot de passe. Ainsi, un utilisateur qui souhaite ouvrir un classeur protégé devra saisir un mot de passe dans une boite de dialogue avant de pouvoir le déverrouiller. En I'absence de ce mot de passe, I'accés est refusé. Prérequis: néant Fichier employé : TP_19_débat.xis« ‘Temps de réaisation : 5 minutes ‘Quvrez le classeur TP_19_débutx!sx, puis enregistrez-le sous le nom TP_19.xIsx. 1} Ciquez sur Fonglet Fchier et, sinécessaire, choisissez informations. Cliquez sur le bouton Protéger le clsseur puis sur Chiffer avec mot de passe. Petipetnngie decane La boite de dialogue Chifrer un document saffiche, Saisisse2 un mot de passe (comme motpasse, ceci n'est 2} quium exemple) dans la zone Mot de passe pour la lecture, puis ciquez sur OK. Dans la zone Mot de passe de la boite de dialogue Confimer le mot de passe, saisissez 8 nouveau le mot de passe, puis cliquez sur OK. =r 2 ° Ee 4 -4 fo} ca < = a fe} u 4 rT} = < I~ a 39 | 4 5 — m P a fe} 4 rc > tJ fe) rs] = ce} 2 2012 Dunod. pyright Cor 40 Travaux pratiques avec Excel 2007 et 2010 - Fonctions avancées 3 | Clauer sur Fiche, puis sur iformavions i estndiqué que le dasseur est protéae Team binten_taeeapap emer tame Raion a Informations sur TP_18 a pacar Cliquez sur Accueil fermez le casseur : une boite de dialogue vous demande de confirmer les modifications. 4 | Ciquez sur Ok, puis ouvrez & nouveau le dasseur : une boite de dialogue vous demande de saisir le mot de pt passe, Ne saisissez rien et cliquez sur OK. 5 |] Ue Bolte de dislogue vous sgnale que le mot de passe est invade. Sans le mot de passe, vous ne pouvez pas ‘ouvir le classeur Ay, serene enero moe ORIN) ret ee eavea ence Cay wis Protection de l'ensemble 0} d’une feuille de calcul ue Fouverture d'un classeur soit protégée ou non, vous pouvez protéger toute une feuille de calcul contre toute modification. Prérequis: TP 19 Fiehier employé : TP_20_débutxlss “Temps de réaisation 5 minutes ‘Quvrez le classeur TP_20_début.xlsx, pus enregistrez-e sous le nom TP_20.xIsx. 11} Cliquez sur Fonglet Fcher et, si nécessaire, choisissez informations. Cique® sur le bouton Protéger fe classeur puis Protege la feuile active 4 Q = 4 fo} ca 4 eT al fe} 0 4 wu = Ey = Fe Laks i FE Dans la boite de dialogue Protéger la feulle, laissez cochées les options et saisissez un mot de passe (motpasse, 2 | par exemple), puis ciquez sur OK, Dans la zone Mot de passe, de la boite de dialogue Confimer fe mot de passe, saisissez 8 nouveau le mot de passe, puis cliquez sur OK, rege ate ee ge asc erates a Travaux pratiques avec Excel 2007 et 2010 - Fonctions avancées 3 | Clauer sur Fiche, puis sur formations: i estndiqué que la feuie de calcul est protege, Teael_eten_WaeenpeeeJomues Sonn Ramson Anche ed ennai Informations sur TP_19 Members | ein ae som tm 2 3S Cliquez sur Accuei, sélectionnez la cellule D6, saisissez 440000 puis appuyez sur Entrée : une borte de dialogue 4 | signale que la teulle est protégée et qui toute modification est impossible, Cliquez sur OK. Enregistrez et fermez le classeur TP_19.xlsx. Laake ste gaine tng sae Aa Fogpuilg rechten gear atin, rapier wee cmon Cs ict fe rote, oe Ge | 4 5 — m P a fe} 4 rc > tJ fe) rs] = ce} 2 2012 Dunod. pyright Cor a2 Protection d’une partie 1} d’une feuille de calcul jour protéger seulement une partie d’une feuille de calcul, vous protégez toute la feuille aprés avoir enlevé les protections sur les zones modifiables. Prérequis: TP 19 et 20 sation : 5 minutes ‘Ouvrer le ciasseur TP_21_débutxise et enregisrez-le sous le nom TP_21xisx. 1} Sétectionnez la zone C5:07, puis, dans le groupe Format de Fonglet Accue, ciquez sur Format de cellule. — aa cma gt el eee a a, ora B-/aas ewe ee a 2" Bret nace apse 2 ° Ee 4 -4 fo} ca < = a fe} u 4 rT} = < I~ a Dans la boite de dialogue Format de cellule, cliquez sur fonglet Protection. Dans celui-ci, décochez option 2 | Verrouilee, puis ciquez sur OK. {trae Rewer poe teats bate Pepe wee idan a3 Travaux pratiques avec Excel 2007 et 2010 - Fonctions avancées Dans le groupe Modifications de Vonglet Revision, diquez sur Protéger la feule “Aterone 2Ose8 ee Dans la boite de dialogue Protéger a fui, siisse2 motpasse (Cest un exempled et ciquez sur OK. Dans la 4 | boite de dialogue Confrmer le mot de passe, saisissez motpasse (ou le mot de passe cho's) et ciquez sur OK. | 4 5 rr m P a fe} 4 rc Pd tJ fe) rs] = ce} 2 5] Sélectionnez la cellule C5 et seisisez 110000 : la valeur de la cellule est modifiée, S = soe Cliquez sur la cellule ES. Essayez de saisir une nouvelle valeur : la boite de dialogue signalant que la cellule est 3 6 | protegée satiche. Seules les cellule de la plage initialement sélectionnée peuvent étre modifies. 5 Enregistrez et fermez le classeur TP_2I xlsx. y Licale sie guiness meets EE eErete Steenrod eto gee 44 a Afficher les relations entre formules 2} et cellules I est parfois difficile de vérifier exactitude d’une formule ou de détecter la source d'une erreur. [Excel permet d’examiner pour chaque cellule les cellules intervenant dans son contenu (les antécé- dents) ou celles affectées par le contenu de la cellule active (les dépendants). Prérequis: néant Fichier employé : TP_22- débats ‘Temps de réalisation : 10 minutes ‘Ouvrez le classeur TP_22_débutxlsx et enregistrez-le sous le nom TP_22.xIsx. 1} Ciquez sur rongletFicher puis sur Options. Dans la boite de dialogue Options Excel, cliquez sur Options avancée. (ed emir Bh ewer i rene Dans la section Afficher les options pour ce classeur,sélectionnez le clesseur voulu, puis vérfiez que option Pour 2 | ces objets aficher est fxée a Tous ‘Attcneries options pour cedasseur:|P_22atx ey (W) smener a ede attement norgontale ID tener ies onglets de carer © Grouperles dates dans le men Five stomatioue Pour des objets, atiche: © tout en masque les abe) 45 2 ° Ee 4 -4 fo} ca < = a fe} u 4 rT} = < I~ a | 4 5 rr m P a fe} 4 rc Pd tJ fe) rs] = ce} 2 46 Travaux pratiques avec Excel 2007 et 2010 - Fonctions avancées 3} anvecedents Sélectionnez la cellule K5, Dans Fonglet Formules, dans le groupe Audit de formules, diquez sur Repérer les er eae Geen: srr eect < Excel affche des fléches d'audit pour les antécédents, soit chaque cellule fournissant des données & la cellule ac- 4 | tive Les feches sont bleues pour une cellule exempte derreurs, rouges si celle-ci génére une erreur 5} dependants Sélectionnez la cellule 17. Dans Tonglet Formules, dans le groupe Audit de formules, cliquez sur Repérer les hee Ome a i = Excel affche des fléches ‘audit pour les dépendants, soit chaque cellule référencant la cellule active. Les fléches 6 | sont bleues pour une cellule exempre derreurs, rouges si celleci génere une erreur Fessmste | opus 00006 [rosea Prosi Prost saome| —coaroe| eaomne| 006 | Powe Fosse] Opus oan] anoo0e| audit disparaiccont 7 | Dans fonslet Formuies, dens le groupe Aucit de formule, diquez sur Supprimer es féches. Toutes les feches Cest également le cas si vous modifez la formule vers laquelle elles pointent, si vous insérez ou supprimez des colonnes ou des lignes, ou si vous supprimez ou encore déplacez des cellules. Enregistrez et fermez le classeur TP_22.xisx. Se oem secre etter vs HP: etoten = Prteneeis watt TP ‘ Authentifier un classeur Losweres échangez des fichiers sur des réseaux, et en particulier Internet, il est important de s'assurer de lorigine des fichiers. Cela est possible en authentifiant chaque classeur a l'aide d'une signature numérique. Celle-ci se définit comme une chaine de caractéres qui combine mathémati- quement un fichier de signature numérique secréte et unique au contenu d’un classeur, q de vérifier lidentité de l'utilisateur qui a signé le fichier. Les détails techniques et la procédure de gestion des certificats numériques dépassent la portée de cet ouvrage. Pour ce TP, nous utilisons I'ac- cessoire du systéme Microsoft Office selfcert.exe pour générer un certificat. Ce dernier convient pour cette démonstration, mais les autres utilisateurs ne le considéreront pas comme valide. Prérequis: néant Fichier employé : TP_23.débat.xlss “Temps de réalsation : 5 minutes ‘Ouvrez le classeur TP_23_débutxlsx et enregistrez-le 1 | sous te nom TP_23.xisx Cliquez sur le Bouton Demarrer, puis sur Tous les pro grammes, et enfin, sur Microsoft Office, Outs Microsoft Office 2010 et sélectionnez Certifcat numérique pour tes projets VBA La boite de dalogue Créer un cerifcat numérique saf- 2 | Fiche. Dans la zone Le nom de voure certfca, tape2 Excel 2010 et ciquez sur OK. Sieisurectemon dun cates sacar cote saetsos oe = Cliquez sur OK pour fermer la bolte de message indi 3} quant que le programme a créé avec succes le certificat. enon ase Sun cect pot ce 0, a r re) = < c ° ca < et mT ° U 4 Ww S < cs = aT | 4 5 rr m P a fe} 4 rc Pd tJ fe) rs] = ce} 2 2012 Dunod. Copyright Travaux pratiques avec Excel 2007 et 2010 - Fonctions avancées Cliquez sur 'onglet Fichier, puis, si nécessaire, 4} sur informations. Cliquez sur Protéger fe clas: eur puis sur Ajouter une signature numérique. Cliquez sur OK pour fermer la boite de mes- 5} sage qui offre la possibiite daccéder aux ser- vices de signatures o’Orfice MarketPlace. Dans la boite de dialogue Signature, dans la zone Objectif de fa signature de ce document. sasissez Test Excel Verifiez que le certficat Excel 2010 apparait dans la zone Signer comme de la boite de dialogue puis di- ‘quez sur Signer. La boite de dialogue Confirmation de signature 6 | Saffiche et le ciasseur est marqué comme final Cliquez sur OK. Dans la page Informations, il est signalé que le 7 J casseur est signe avec une signature invalide : Un certificat ainsi créé n’a pas de réelle valeur. Pour en obtenir un vrai, vous devez acheter auprés d'un organisme agréé. Enregistrez et Fermez le classeur TP_23.xisx. 48 = === Mauer ome fal ate ac mat epee yogi eae sve eee upset hte Ci rotons ci ner ve spre it erage mvecie drome Informations sur TP_23 KATPEcDTP 2a, signatures Brevesces Une agate nom “ride petindigue quel case ‘moc apes ignatre. Envoi d’un classeur par messagerie 4} électronique In classeur partagé doit étre distribué vers ses destinataires. Excel permet lenvoi direct d'un clas- Seur par messagerie électronique : vous partez du classeur au lieu de le rechercher depuis votre logiciel de messagerie électronique. Prérequis : TP 11 et 12 Fichier employé : TP 24 début xlsx ‘Temps de réalisation : $ minutes ‘Ouvrez le classeur TP_24_débutxlsx. Cliquez sur fonglet Ficher, diquez sur Enregistrer et envoyer, ensuite sur Envoyer @ Faide de la messagerie, et enfin, sur Envoyer en tant que piece joint. eS 2 ° Ee 4 -4 fo} ca < = a fe} u 4 rT} = < I~ a |mprimer PRY estore np cece a 49 Travaux pratiques avec Excel 2007 et 2010 - Fonctions avancées 2] Yer lice! de messagere souvre, Le nouveau courtier lectonique qui safche content le clsseurpatage | : r ful r a fe) t bo Po iJ fe) a x ° 2 Tapez une adresse dans a zone A, sasisser le texte du message, puis ciquer sur Envoyer. Le programme de 3 | messagerieenvote le message, Si Excel a ouvert votre programme de messageri, ce demie se ferme Fermez le dasseur TP_24_debutxlsx. Bonjour Coit le casseur de prdvsions des Ventes 2012. ‘Merci de modifier éventuellement les cits de vote région, en mativant vos chob. Cocaalement Justin deve 3 Drection Commerce 2 a 8 8 50 Copyright © 2012 Dunod. Windows Live SkyDrive Vous avez certainement entendu parler du cloud computing, nommé en francals informatique en nuage ou infonuagique. Grossigrement, ce concept consiste @ déporter sur des serveurs distants des fichiers et applications de traitement traditionnellement situés sur des serveurs locaux ou sur Vordinateur de l'utilisateur. Microsoft propose une telle structure grace a Windows Live SkyDrive : vous pouvez stocker, organiser et télécharger des fichiers sur les serveurs Windows Live et y accéder, vous ou bien les personnes que vous aurez autorisées, & partir de nimporte quel ordinateur équipé d'une connexion Internet. Ce nest pas un site FTP nécessitant un logiciel client FTP. Cette possibilité d’acces & distance & partir de nimporte quel navigateur (ou presque) a des fichiers stockés en un emplacement unique élimine bien des problemes de transfert et de synchronisation. ie: BB) Antes Namen Noweaés de Shine Sdeienmgenowaptr an cna pte eben evn aor _— Fetes Mme aedeome cats Og BB) a [El] DOCUMENTS |S dein ee Documents a5 jms Dade.” Dele mw. | Pale BL omen Nystdeinget—atnagae Megat Rysemngss hangs Totem. Windows Live SkyDrive offre la particularité de proposer une forme particuliére des applications Office, nommée Web App. Celles-ci permettent de travailler depuis le navigeteur. Il en existe pour tous les produits Office majeurs, Cette partie sintéresse aux données de base de SkyDrive et uniquement a l'emploi d’Excel Web App. Reportez-vous a la documentation pour découvrir toutes les autres possibilités de SkyDrive :ce livre ny suffratt pas a lul seul. aie 2 ie wa SHOR ‘Meme si Excel Web App ne dispose pas de toutes les fonctionnalités d’Excel, il constitue déja un produit tres complet. Vous pouvez en outre télécharger un fichier SkyDrive vers votre ordinateur, le travailler dans Excel puis lenregistrer 4 nouveau sur SkyDrive. wi FS 4 a a = 7) ry = =| “ = fo} a = ES 51 Windows Live : 35 | création d’un identifiant px pouvoir employer Windows Live SkyDrive, vous devez disposer d’un identifiant Windows Live. Si ce n’est pas encore le cas, voici comment en obtenir un. Prérequis: néant Fichier employé :néant ‘Temps de réalisation : 5 minutes ‘Accéde2 & Windows Live ur htp//skydive ive com. Au-dessous de Vous n‘avez pas encore didenuifant Windows 1} ve 1D ?, ciquez sur inscription, riiegainconepactennipaitererih f- 6) 2B = z i=] fo} = 7) = < ca 7) Eo] o i=] = < co SkyDrive Se connecter Stock et aap tut vos Fei gate ee ‘Beker evoysepige e ihes,deshotor tee itor SSE enn oe nt mnt on En savor las skyorive Vous waves pas didentiiant Windows tive ae 0? (sscripsion,| Copyright © 2012 Dunod. 52 Copyright © 2012 Dunod. Remplissez le formulaire pour créer votre identifiant Windows Live ID. TP25 « Windows Live : création d'un identifiant ©2011 Miorct Conditions Condenlté Apropos de nos pubictés Amoncwrs Oéveloppeus Vous accédez a votre espace SkyDrive Boolbety ace IE Menvoyer des tres prometinnees et desintatons&paruoper des engultes ‘Windows Lie, Bing et MSN. (ous pours ‘vous déscbonne tot meme) eu FS rs a = = 17) uu = a 1) = fo} f=) FS = en caquart sur Jaca yous accepte 2Ccra de sere Mroso ela ecaraten de conten. (ies ented coments rs EE) wR (EE) rage LB nce Mounauener| DW nate 53 Windows Live : stocker un classeur ne fois votre compte Windows Live SkyDrive ouvert, vous pouvez facilement y stocker des clas- seurs Excel. Prévequis : 1P25 Fichier employé : TP_26_skyivealsx “Temps de jam: 5 minutes 7] Accédez 8 vote espace SkyDrive & aide de votre ientiant Windows Live ID, puis ciquez sur Nouveau dossier. = z i=] fo} = 7) = < ca 7) Eo] o i=] = < co Rntraromnans org ig & Teste mene. J] Sasssez comme nom TP Excel, Le nowveeu dossier apparat dans votre espace, a Tin na S Soon htop Et Raaaesnat. | ia eae 2B ee Saag BD once a BB ise yeni saoge crn Nyse hate Copyright © 2012 Dunod. 54 © 2012 Dunod. Copyright P26 « Windows Live : stacker un classeur Cliquez sur le dossier TP Excer, puis sur Ajouter des fichiers. ‘SkyDrive own 2 Ow oman aoa Gt rent 5 "Naviguez [usqu’au fichier TP_26_skyahive.xls, sélectionnez le fichier puis cliquez sur Ouvair Une boite de progression indique le chargement du fichier. Une fois le chargement terminé, fermez:la : le dasseur est désormais présent dans votre espace SkyDrive. Te eet Sutmedehsin tome + TP ce ES men 8 yee Roce cosmnocen ors BB EE] yeaninint tin dogee 55 eu FS rs a = = 17) uu = a 1) = fo} f=) FS = = z i=] fo} = 7) = < ca 7) Eo] o i=] = < co Copyright © 2012 Dunod. 56 Windows Live : ouvrir un classeur 35 | dans Excel Web App I est trés simple d’examiner des classeurs stockés sur SkyDrive. Prérequis : TP 25 e126 Fichier employé : TP_26_skyrive xlsx (sur SkyDrive) ‘Temps de réaisation : 5 minutes Accédez, si nécessaire, & votre espace SkyDrive. Cliquez sur le dossier TP Excel, puis double-ciquez sur le fichier 1) 126 Seyrivesdsx Vous voyez apparaitre interface familére d'Exce.l sagit en réalité d Excel Web App, une application fondée sur 3 | un navigateur qui permet caffcher et d'utilser des classeurs Excel depuis un navigateut. Toutes les fonctionnaltés Excel n'y sont pas disponibles ou ne fonctionnent pas de la méme facon. Il nest pas nécessaire qu Office soit installé sur Fordinateur employe. Copyright © 2012 Dunod. Windows Live : créer un classeur dans Excel Web App E plus d’examiner et de modifier des classeurs dans SkyDrive, vous pouvez directement y créer un nouveau classeur. Prérequis : TP25, 26 27 Fichier employé : néant “Temps de réalisation + 5 minutes T | Accedez sinécessaire, a vote espace SkyDrive, ciquez surle dossier TP Excel puis surle bouton Créer un asseur Excel, SkyDrive cies DGD | Neder ten ee TPexcel ected seamen eps OW Decent Stine dein Soper » Tce nm Dit demesi. Dene medi Documents récents gp gy eh Dans la boite de dialogue, saisissez comme 2 | nom TP_28_skydrive puis ciquez sur OK. Neuen casseur Microsoft Excel wasn ‘Le classeur s‘ouvre dans Excel Web App. Fermez-le. II n'est pas nécessaire de enregistrer dans la mesure oit Excel 3 | Web App se charge immédiatement et automatiquement de conserver en mémoire les modifications apportées. [Eetcoapp 28 ancien Serie oe a = Bye om ja ss! ys oem crac aA BR RS oct oe ee J] Vous pouvez ds tors voir fe nouveau dasseur [race présent dans votre espace SkyDrive. Sboedeintge = Wid ete Cees 57 wi FS 4 a a = 7) ry = =| “ = fo} a = ES = z i=] fo} = 7) = < ca 7) Eo] o i=] = < co Copyright © 2012 Dunod. Windows Live : ouvrir le classeur L329 | dans Excel ixcel Web App ne dispose pas de toutes les fonctionnalités d’Excel Office. Vous pouvez toutefois ouvrir le classeur situé sur SkyDrive localement dans votre version d’Excel. Prévequis : TP 25428 Fichier employé : TP_26_skyrivealsx “Temps de réalisation 5 minutes 7] Accédez,sinécessaire, 8 votre espace SkyDrive, diquezsurle dossier TP Excel, pus slectionnez le fichier T.26. skydrive sx. TP bxcet Recherher de dourent tpn OS || SyOwve deren egse » TP Ec Es om te demos. Dee odin. cot aystnewe tn tout parm, ya 2 | if fctiersatfche dans Excel Web App. Dans Fonglet ‘Accueil, dans le groupe Office, cliquez sur Ouvnr dans Excel, Dans la boite de dialogue d'avertssement qui ] Dans le menu de droite, ciquez sur Partager le dossier, ‘SkyDrive oe 2 OO [feiss eters a noms Documens ens pears Documents paragés nse BB mise mocnmaiersee (2 pore tain Dans la boite de dialogue qui s‘ouvre, 3 | tager le dossier, saisissez un message vvoyé. Il se pourrait qu'un message de saisissez adresse de messagerie de la personne avec qui vous voulez par- facultaif et cliquez sur Partager. Un message électronique va lui étre en- sécurité demande de confirmer. Saisissez alors le code présenté au-dessus dans la zone, puis ciquez sur Continuer. Dans la partie droite de SkyDrive, votre dossier est signalé comme partagé. 62 Partager « TP Excel » A: [mest 1 ter dennmtare peor medbere cons iro) Copyright © 2012 Dunod. TP " . Ee] Windows Live : partager un classeur pe que de partager tout un dossier, vous pouvez ne partager qu'un seul classeur. Préroquis : 1P25 429, 1P 31 Fichier employé : néant “Temps de réalisation : 5 minutes Connectez-vous,sinécessaire, Windows Live, iquez sur le dossier TP Excel, puis cochez la case & cOté du fichier 1 | 7-26 skychive:xsx. Dans le menu de droite, ciquez sur Partager. Texel Showed hin gue » TPE El non Tyne yan eemneraercecmencetpue OS BB) BE (E > RL) TP 26 sncrve -Panage EB weapapt Dans la boite de dialogue qui souvre, saisissez 2 | adresse de messagerie de la personne avec ui vous voulez partager le fichier (cela peut re ici une adresse fictive, saisisez un message facul- taf, et iquez sur Portager. Un message électronique va lui étre envoy. Comme précécemment, vous pour ‘iez voir apparatre un message de sécurité demandant de confirmer. Saisissez dans ce cas le code présenté au-dessus dans la zone, puis diquez sur Continue. Comomew Parager TF 26 sidivexta= mee z sens oman 3 Dans la partie droite de SkyDrive, votre dossier est si- dgnalé comme partagé. Cliquez sur la croix rouge a cote {du nom de la personne avec qui vous avez partagé le dossier pour annuler le partage. GB) 1.26 socine Niner oe ttn ‘Niche de pe tsa ie ergoee -Pantage 63 wi FS 4 a a = 7) ry = =| “ = fo} a = ES “pound zt0z @ ywBtuAdo3 Macros et VBA (Visual Basic for Applications) A Torigine, une macro, abrégé de macrocommande, permettait d'effectuer rapidement une série de frappes répétitives : des raccourcis pour des commandes de interface utilisateur. Excel a introduit un langage de programmation a part entiéte, finalement devenu Visual Basic pour Applications, ou VBA, qui permettait d'exécuter des taches autrement complexes. ’habitude est toutefois restée de hommer macro toute procédure (routine ou fonction) écrite en VBA. VBA riest pas spécifique a Excel, mais peut étre utilisé avec les autres produits de la famille Office. est une excellente introduction a la programmation en Visual Basic. Néanmoins, le fait est que cest probablement avec Excel que VBA se révale le plus intéressant. Ses possibilités d'emploi sont innombrables : personalisation de fonctions intégrées, création de nouvelles fonctions personnalisées, construction d'une interface personnalisée pour accomplir en Un clic des taches répétitives parfois trés complexes, etc. VBA est un langagede programmation orienté objet. Cela signifie simplement que chaque composant d'Excel (classeur, feuille de calcul, plage de cellules ou cellule, graphique ou point dans un graphique) est un objet qui peut étre manipulé par VBA. ‘Tout classeur se compose d'un ensemble d'objets qui peuvent étre manipulés par programmation. Le classeur, les feuilles de calcul et es lignes sont autant dobjets que vous manipulez lors du travail avec un tableur. Leur liste complete est impressionnante : vous en découvrirez un certain nombre peu a peu dans ce chapitre. VBA, langage de programmation orienté objet, est capable de les manipuler. Certains dentreeuxappartiennenta une collection. Une collection est un ensemble dobjets similaires pouvant étre manipulés simultanément : une collection est elle-méme un objet. La collection des classeurs en est un exemple. Il est constitué de chacun des objets classeur que vous avez a votre disposition. Vous vous référez généralement a un élément d'une collection en mettant son nom entre parenthéses, comme dans exemple suivant : Col ection( "Nom_é1 énen Les principales collections d’objets du tableur Excel sont WorkBooks (classeur), Sheets (feuille de calcul) et Range (cellules). Elles sont utilisables selon une hiérarchie descendants Workbooks(*Ventes 2009"). Sheets ("Janvier") . Range(*82*) désigne la cellule B2 de la feuille Janvier du classeur Ventes 2009 ; Sheets ( "Janvier" ).Range("82") désigne la cellule B2 de la feuille Janvier du classeur actif (ouvert et affiché) ; Range "82") désigne la cellule B2 de la feuille active. Veillez 8 ne pas confondre collection et objet membre d'une collection. Le nom d'une collection se termine par un « s ». Ainsl, Sheets est la collection de toutes les feullles d'un classeur, Sheet est une feuil Une méthode est une action qui peut étre effectuge par un objet. Un objet de classeur posséde des méthodes, Lobjet classeur (Workbook) posséde par exemple une méthode Open (ouvrit) et une méthode Close (fermer). Dans une instruction VBA, vous employez la méthode d'un objet en faisant 65 a z = e =< = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = PEC E REP ERAS Ewe eee) 1) 66 Travaux pi iques avec Excel 2007 et 2010 ~ Fonctions avancées suivre son nom de celui de la méthode, séparés par un point : Collection(*Nom_é1ément").Nom_mét hode Les propriétés décrivent un objet. Certaines sont en lecture seule, d'autres en lecture/écriture. Une propriété en lecture seule ne peut étre modifiée. Ainsi, un objet classeur posséde une propriété Path (chemin), qui décrit son chemin d'accés complet. Elle est en lecture seule car vous ne pouvez pas modifier le chemin d'un classeur sans enregistrer dans un autre dossier. Une propriété posséde donc une valeur. Vous modifiez la valeur d'une propriété en lecture/écriture en lui affectant une nouvelle valeur. Vous spécifiez une propriété comme une méthode: Collection (*Nom.é1ément*).Propriété - Valeur Si vous n’affectez pas de valeur, linstruction indique (ou renvoie) la valeur courante. Parmi les propriétés classiques figurent sible (8 utiliser avec True et False pour afficher ou masquer), Value (valeur d'une cellule}, Count (nombre de cellules d'une page, de feuilles de classeur, etc). Les propriétés et méthodes d'un objet portent le nom de membres. Lditeur VBA propose diailleurs deux dispositifs trés intéressants, la liste des membres et |'information rapide automatique, qui simplifient considérablement le travail de rédaction de code. Nous y reviendrons ultérieurement. Une procédure est un ensemble dinstructions de programmation qui effectue une tache spécifique ou renvoie un résultat. Il en existe de deux sortes : Une sous-routine effectue une tache spécifique. Les macros enregistrées directement sont des sous-routines. Une fonction est congue pour renvoyer un résultat. Lorsque vous écrivez du code, vous modifiez ou créez une procédure. Le processus est identique quill s'agisse d'une sous-routine ou d'une fonction. Ulest impossible dans cet ouvrage d'entrer dans le détail de la programmation orientée objet : nous nous limiterons a vous montrer des exemples de mise en ceuvre de procédures VBA afin d'améliorer votre confort et votre productivité, Pour en savoir plus, vous devrez vous en reporter & un ouvrage plus spéciali 2012 Dunod. Copyright 1P 7 : i Prérequis au travail avec VBA ‘onglet Développeur, indispensable au travail avec les macros (et donc VBA), nest pas affiché par défaut. Si un groupe Macros est disponible a lextréme droi Vonglet Affichage, méme en absence de onglet Développeur, ses fonctionnalités restent plus limitées que celles de ronglet Développeur : mieux vaut rendre visible cet onglet lors du travail avec les macros. Prérequis : néant Fichier employé :ngant ‘Temps de réaisation : 5 minutes (Cliquez sur Fonglet Fchier. Cliquez sur Options, puis sur la catégorie Personnalser le Ruban. i ( reroratis rata 67 a z = e =< = =I a 4 4 [- 4 co} a YZ ay 4 -} = =} fea fod 4 a > e ey wv to) c uv —¢ = Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Si onglet Développeur n’apparait pas dans la liste des onglets principaux, sous Personnaliser le Ruban, dans la liste 2} Onoiets prinapaux, ciquez sur Développeur, puis ciquez sur Ajouter. Sil y est dela présent, cochez sa case ‘Cliquez sur OK. Dans le ruban, cliquez sur fe nouvel onclet Développeur. Dans le groupe Code, cliquez sur option Sécurité des 3 | macros. Conservez le réglage par détaut, Desactver toutes les macros avec notification, qui désactive les macros tout en activant les alertes de sécurité. Vous pourrez ainsi choisir d activer ces macros au cas par cas. Cliquez sur OK. Ces modifications sont apportées 8 Excel de facon générale, et non pas a un classeur particulier. Elles resteront actives, tant que vous ne les changerez pas. = > ray zx oa 7 m 4 < o Pad i 7) = > re J Pd a] a mn ° Zz P= a] a] = Ss = 2 = aa) one pera Se |» esonertoes ia mae ne een components © Denar teete me ese mae se settee 5 Pane a asp sors a sets ape su noste ene eure & 68 3a | Enregistrement d'une macro Jous allons dans ce TP enregistrer une macro simple : cest le meilleur moyen de comprendre le [fonctionnement de VBA, tout en offrant un excellent exemple de la facon dont les macros peu- vent vous simplifier la vie. Le classeur de cet exercice présente la liste des commerciaux d’une entre- prise fictive. Il indique leur nom, leur région d’activité et leur chiffre d'affaires. Cette liste pourrait notamment étre créée automatiquement a partir d’un fichier texte, et s‘avére peu exploitable sous sa forme actuelle. Vous souhaitez pouvoir la trier de différentes facons, afin d’interpréter plus rapi- dement les données. Comme vous devrez effectuer fréquemment ces opérations, vous désirez créer des macros. Prérequls : TP 33 Fichier employé : TP_34_dabat-xs ‘Temps de réalisation : 15 minutes ‘Ouvrez le classeur TP_34_débutxlsx et enregistrez-e sous le nom TP_34 xlsx. 11} Dans e groupe Code de Fonglet Développeur, diquer sur Enregistrer une macro. aap? a & Dans la bote de dialogue Enregistrer une macro, sasissez dans la zone Nom de la macro TriRégion. Dans la zone 2 | Touche de raccourci précédée de Cts, appuyez sur la touche MAJ puis sur la touche A. Vous voyez apparalire CvisShift, avant la lett A dans la zone. Dans la zone de la liste déroulante Enregistrer la macro dans, laissez la valeur par defaut, Ce classeur. Saisissez le bref descrptif suivant dans la boite Desorption : TH par région et chiffre diaffaires. Ciquez sur OK. Un nom de macro peut contenir des letres, des ches, le caractére de soulignement, mais jamais espace. I dot com- ‘mencer par une letire et sa longueur ne doit pas dépasser 64 caracteres Préférez des noms cours et evocateurs ‘nar egen et de dtr (9) Come 69 a z = e =< = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées 3 | Appuvee sur Cr+ pour sAlectonner atta de la fuille de calcul, pus, dans le menu Données, ciquez sur Tier. UY eo u ee aac Dans la boite de dialogue Tri, choisissez dans la zone Trier par Région. Cliquez sur Ajoutez un niveau, choisissez 4 | dans ia zone Iner par Chiffre d’affaires, puis fxez ordre de ti du plus grand au plus petit. Cliquez sur OK. La feulle de calcul est trie selon vos cites 5} Ciquez sur fonglet Développeur, puis ciquez sur Arréter Fervegisvement dans le groupe Code. est facile ‘oublier qu'un enregistrement est en cours Celuici se poursuivant jusqu’a son arrét explicite, veillez a toujours arréter un enregjstrement des que les taches sont accomplies. Si vous avez oublié d arré- ter enregistrement d'une macro a temps, vous niavez pas a tout enregisrer 4 nouveau : i suffra déditer la macro et de supprimer les actions superfues. Nous Yerrons parla suite comment éiter une macro = > ray zx oa 7 m 4 < o Pad i 7) = > re J Pd a] a mn ° Zz P= a] a] = Ss = 2 = aa) Cliquez 8 nouveau sur Enregistrer une macro. 6} Dans la boite de dialogue Enregistrer une ‘macro, sasissez dans la zone Nom de fa macro THCA. Dans la zone Touche de raccourci précédée de Crt, appuyez sur la touche Maj puis sur la touche B. Dans la zone de liste déroulante Enregistrer fa macro dons, lassez la valeur par défaut, Ce classeur. Sasissez dans la boite Description le bret descriptif suivant : Tri ar chiffres d'affaires. Cliquez sur OK 012 Dunod Copyright © 70 012 Dunod Copyright © ‘Appuyez sur Cir-+A pour sélectionner la totalté de la 7} euile de calcu, puis, dans le menu Données, diquez sur Trier. Dans la bote de dialogue Tr, ciquez sur Suppnimer un niveau pour conserver uniquement le tri par chiffre fatfetes. Cliquez sur OK. La feville de calcul est tiée selon les nouveaux criteres, 8 | Ciquez sur le bouton carrét de lenregistrement, en bas a gauche de la barre détat : cest autre facon darréter un enregistrement. Mieux vaut toujours enregistrer ‘un dasseur qui contient une macro avant de la tester. Si celle-ci contient des erreurs, vous risqueriez en effet de perdre des données lors de son exécution. Si tel est le cas, fermez le clas- seur sans lenregistrer, puis rouvrez-le, ce qui restaurera les donnees dorigine. Cliquez sur le bouton Enregisirer, dans la barre doutis daccés rapide. 9 | Dans a ote de clatogue qui satchesgnalant que s P34 - Enregistrement d'une macro aa Feuill “Feui2 7 Feu 7 €3 S| ‘vous enregistrez le classeur sous ce format, la macro sera perdue, cliquez sur Non. Dans la boite de dialogue Enregistrer sous qui s ouvre, sélectionnez le type de fichier ‘Classeur Excel (prenant en charge les macros (*xshm), puis ciquez sur Enregistrer. Pour vous prémunir conte les virus susceptibles d étre présents dans une macro, il est bon de savoir que seul un fichier dont extension de nom de fichier est xlsm peut contenir des ‘ype Cn eet en hone maces Cab) Meee: Nowa oe Appuyez sur CitMai+A : la liste est classée par ré- 10} ion puis par chitire affaires. Appuyez sur Cir-tMay+B = la liste est triée uniquement par chiffre dafaire. Vous pouvez ainsi basculer trés rapidement entre les deux vues, plut6t que d'avoir a utiliser la boite de dialogue Tri Enregistrez et fermez le fichier TP_34.xism. ‘macros. om + Cina) Ci) 71 7 z = e =< = =I a 4 4 [- 4 co} a = ay 4 -} 4 =} fea cl 4 a > e ey wv to) c uv —¢ = = > ray zx oa 7 m 4 < o > SI 7) = > re J Pd a] a mn ° Zz P= a] a] = Ss = 2 = aa) Dunod. 20 pyright Cor 72 TP . 5} Macro absolue ou relative résultat d'une macro peut grandement différer selon quelle soit relative ou absolue. Ce TP va présenter les distinctions et particularités. Prérequis : TP 33 ct 34 Fichier employé :néant “Temps de réalisation : 5 minutes 1] Suez un dasseur verge et enregisteze comme claseurprenant en charge les macros sous le nom TP_35 xlsm. Cliquez dans le groupe Code de longlet Développeur sur Enregistrer une macro. Nommeze GrasAbsolu, ‘comme raccourci Ctel+Maj+A et comme description Gras absolu, Cliquez sur la cellule B2. Dans fonglet Accueil, groupe Police, cliquez sur le bouton Gras, puis arrétez lenregistre- 2 | ment (par le bouton de la barre des taches ou celui de Fonglet Développeun. la cellule revient en gras. TP35 + Macro absolue ou relative Saisissez 500 dans la cellule £2. Le contenu apparat en gras, suite & Topération précédente. Sélectionnez la cellule 3 | nouveau puis ciquez sur Gras dans longlet Accueil pour supprimer la mise en forme. Appuyez sur CurMap+A ig pour suppr PP t= | 9 @ ea) Saisissez 800 dans la cellule B3. Appuyez sur Cirf+/Maj+A : il ne se passe rien, si ce rest que le curseur sélec- 4 | tionne a nouveau la cellule 82. Vous avez créé ici une macro absolve. En sélectionnant une zone ou une cellule précise aprés avoir lancé Fenregistrement, la macro appliquera vos instructions uniquement & ou a partir de cette cellule ou plage précise, sans modification possible. Procédez ainsi lorsque vous voulez absolument que la macro affecte une cellule ou une plage précise. a_i f= Cliquez dans le groupe Code de Vonglet Développeur sur Enregistrer une macro. Donnez-iui comme nom 5 | ttaliqueRelatif, comme raccourci Ctrl+Maj+B et comme description Kalique relatif Saisissez 400 dans la cellule C3, 550 dans la cellule C4. Sélectionnez la cellule C3, puis appuyez sur Cir-HMai+B : 6 | ia cellule passe en italique. Sélectionner la plage 84:C4, puis appuyer sur Cirt-+/Ma-+B : a plage passe en itaique. La macro sapplique & toute celiule ou plage de cellules sélectionnée, En sélectionnant comme vous Tavez fait ici une cellule ou une plage avant de lancer lenregistrement, le processus de sélection mest pas enregistré dans la macro. Cel lei sexécute sur ou a partir de la zone active : Cest une macro relative. Les macros relatives sont souvent plus polyvalentes. Enregistrez et fermez le casseur TP_35.xlsm, a z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} = =} fea fod 4 a > e ey wv to) c uv —¢ = 73 = > ray zx oa 7 m 4 < o Pad i 7) = > re J Pd a] a mn ° Zz P= a] a] = Ss = 2 = aa) Dunod. 20 pyright Cor 4 Modification des propriétés d’une macro prés avoir enregistré ou créé une macro, vous pourriez vouloir modifier ses propriétés fonda- mentales, comme le nom, le raccourci ou la description (mais pas encore le code). C’est ce qu’ex- plique ce TP. Prérequis: TP 33 ct34 Fichieremplayé : TP_36 débutmm “Temps de réalsation: 5 minutes Ouvrez le fichier TP_36_débutxism. Puisqu'l saat d'un classeur renfermant des macros et quill dépend des ré- 1] glages de sécurité que nous avons retenu, un bandeau davertssement signale un contenu acti Ciquez dans le bandeau sur Actver fe contenu, puis enregistrez le fichier sous le nom TP_36.x1sm. (RE [erence roma bona eaaon ama pone soem 2 |e ia a) a |) Ree Ba. s Soa Seen cg O28 eh ESSER yg Beeee cme irene 2 a8 a © 2012 Dunod. Copyright TP36 + Modification des propriétés d'une macro La boite de dialogue, Macro permet d'effectuer de nombreuses opérations, dont entre autres fex€cution dune ‘macro. Cliquez ici sur Options. Dans la zone Description, complétez le texte avec : Gras absolu : cette macro naffecte que la cellule B2. Vous pourriez également modifier le nom et le raccourci, Cliquez sur OK, puis sur Annulr. Enregistrez et fermez le classeur TP_36.xlsm, 75 a z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} = =} fea fod 4 a > e ey wv to) c uv —¢ = PEC E REP ERAS Ewe eee) 1) 76 Emplacement de stockage d’une 7 | macro lest possible de stocker une macro (enregistrée ou créée manuellement) en différents endroits, se- n le but et la portée de celle-ci. Ce TP présente les différences existantes entre les multiples lieux de stockage. Les macros employées n’ont guere d’intérét, ce sont les conséquences du choix du liew de stockage qui nous intéressent. Prérequis: TP 33.36 Fichier employé : TP_36_débutxlsm ‘Temps de réalisation : 10 minutes Ouvrez un dlasseur vierge et enregistrezle 1 J sous le nom TP_37x/sm. Dans tonglet Developpeur, diquez sur le bouton Enregistrer une macro. Dans la boite de dia- logue Enregistrer une macro, saisissez comme nom GrasRelatif, comme raccourci Ctrl+Maj+G, comme description Gras relatif puis ciquez sur la fleche dé- roulante sous Enregstrer cette macro dans. La premiére possibilié, Ce claseur, enregistre 2 | ta macro dans le classeur ac. Séectionnez ce choix et diquez sur OK. Cliquez ensuite sur ‘Accueil, puis sur le bouton Gras du groupe Police et aétez la macro. Cliquez ensuite sur Yonglet Développeur, puis sur Macros: vous voyez dans la liste tune seule macro disponible, GrasRelat. Cliquez sur Annuler. Dans fonglet Développeur, 3} ciquez sur le bouton Enregistrer une macro. Dans la boite de dialogue Macro, saisissez comme nom HtaliqueRelatif, comme ‘raccourei Ctrl+MajH. comme description Italique retatif puis liquez sur la fleche déroulante sous Enregistrer cette ‘macro dans, en chosissant cette fois Classeur de macros personnels. Cliquez sur OK. 2012 Dunod. pyright Cor Cliquez sur Accueil. puis sur le bouton stalque du 4 | Groupe Police et arrétez la macro. Cliquez ensuite sur Tonglet Devefoppeur, puis sur Macros : vous voyez dans la liste que deux macros sont disponibles : GrasRelatt et IraliqueRelati. Remarquez que la seconde macro est identifiée sous le nom PERSONAL X/SBiltaiqueRelatt. Dans onglet Développeur, diquez sur le bouton 5} Enregistrer une macro. Dans la boite de dialogue, saiss: sez comme nom SoulignéRelatif, comme raccourci Ctrl+Maj+S, comme description Souligné relatif puis ci- quez sur la figche déroulante sous Enregistrer cette macro dans, en choisssant cette fois Nouvenn closseur Clique7 sit OK. Cliquez sur Accueil, puis sur le bouton Soulgné du 6 | Groupe Police et arrétez la macro. Ciquez ensuite sur Tonglet Developpeur, puis sur Macros : vous voyez dans la liste que trois macros sont disponibles : GrasRelati traliqueRelatf et SouligneRelatif. Remarquez que la nouvelle macro est identifi sous le nom CiasseurN!SoukgnéRelat, ot ‘Nest un chifre dépendant du nombre de nouveaux classeurs que vous avez ouverts jusquici avec cette instance d Excel (7 dans le cas de la capture décran) 1P37 « Emplacement de stockage d'une macro teatamen tondelamaze: Sseaereseiet Txcae de rca chistes Erepeteramace de <7 segs rene enelomee (Seer aap 7 a z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = = > ray zx oa 7 m 4 < o > SI 7) = > re J Pd a] a mn ° Zz P= a] a] = Ss = 2 = aa) 2012 Dunod. pyright Cor 78 Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Enregisrez et fermez le dasseur TP_37xslm. Vous voyer appari le nouveau dasseur. Cliquez sur Fonlet 7} Développeur, puis sur Macros : vous voyez dans la liste que seules deux macros sont disponibles: ltaiqueRelatt et SoulignéRelati. Cette demigre rest plus précédée d'un nom de classeur Cliquez sur Annufer. Ce TP démontre plusieurs choses = Une macro n'est disponible que dans le dasseur qui la contient ou dans un dasseur également ouvert sans étre le classeur actif. En choisissant Claseur de macros personnelies, Excel crée, sil nexiste pas dea, un classeur particuler masque nomme Personalxsb. Ce classeur est situé avec Windows Vista et Windows 7 dans le dossier C:\Users\nom_utilsateur\AppDatal LocalMicrosoft\ExceN XL Start et avec Windows XP, dans le dossier C:\Documents and Settings\nom _utisateurApplication Dato Wvicrosoft\Excel\XLStart. Les classeurs situés dans ce dossier XLStart sont automatiquement ouverts 8 chaque dé ‘marrage d'Excel. De ce fait, Personnalxlsb est toujours chargé et les macros quill contient sont toujours disponibles dans ‘vimporte quel classeur Excel Fermez le classeur actif sans lenregistrer, Exécuter une macro lors de ouverture du classeur I est fréquent de vouloir exécuter automatiquement une procédure a Youverture d’un classeur, |Souvenez-vous du TP 34: nous avions créé deux macros pour effectuer le tri d’une liste de commer- iaux. Imaginons que cette liste ialement un fichier texte qu'l faille importer dans Excel. En stockant toujours le fichier actualisé au méme endroit, nous pourrions automatiquement importer &Fouverture du classeur. C’est ce que nous allons faire ici. Prérequis :TP33 et 4 Fichier employé : TP_38_ début xm et TP_38.st ‘Temps de réaisation ; 10 minutes | Quvrez le dasseur TP_38 debuts, actvez le contenu et enregisrez4e comme casseur prenanten charge les ‘macros sous le nom TP_38.xism. Dans Fonglet Développeur, dans le groupe Code, cliquez sur Enregistrer une macro. Dans la zone Nom de fa macro, tapez Auto_Open. Ne saisissez pas de touche de raccourci, laissez le parameétre Enregistrer Ja macro dans & sa valeur par défaut, Ce classeur et saisissez comme description Importation de la liste. Cliquez sur OK. OS mT: AL to ant | & 79 a z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = = > ray zx oa 7 m 4 < o Pad i 7) = > re J Pd a] a mn ° Zz P= a] a] = Ss = 2 = aa) Copyright © 2012 Dunod. 80 Travaux pratiques avec Excel 2007 et 2010 Dans la boite de dialogue Importer fichier 3} Texte, navigue si nécessaire jusqu’a votre dos- sier d'exercices et sélectionnez le fichier TP_38. ‘et, Cliquez sur importer, Cliquez immédiatement sur Termner dans la 4 | boite de dialogue ‘les paramétres par defaut Sont idéals icD. Dans la boite de dialogue sui- Vante, choisissez dimporter & partir de la cellule SAS). Cliquee sur OK. La liste des commerciaux et de leurs chiffres 5} datfaies apparait dans la feuille de calcul ‘Arrétez enregistrement de la macro. Selectionnes fermemble de le zone Ue la fste, 6 | puis appuyez sur Suppr pour la. supprimer. Enregistrez puis fermez le dlasseur TP_38.xlsm, puis ouvrez-le & nouveau. Actvez le content : le clas- seur apparait avec la liste. La macro Auto_Open s'est automatiquement exécutée a Fouverture du dasseur. Vous pouvez uiiliser ses deux autres macros pour trier cette liste & votre guise. Si un classeur dans lequel vous enregistrez une macro ‘Auto_Open contient déja. une procédure VBA dans son événement Open, cette demiére est prioitare. En ‘outre, une macro Auto_Open s‘exécute avant fouver- ture de tout autre classeur. Fermez le classeur TP_38.xlsm. Répondez non au mes- sage qui signale que le dasseur a été modifié et pro- pose de lenregister. Fonctions avancées oro Sime rae ive empties omer) aT 2 crespr— Ovest 3000 2 owrmesu Overt 00 4 buono 000 5S oupont ea 000 Slesaqe suc e700 7 rougerles ‘2000 B simin Nod 135000 3 vito sod 000 a0 woyen centre 0x0 [at pation sue 1200 a 2 Dunod Pom. 7 Edition d’'une macro I est toujours intéressant d’examiner une macro enregistrée pour éventuellement la modifier, ou simplement pouvoir reproduire telle ou telle commande dans une macro que vous souhaitez ré diger. Jusque-Ia, nous avons toujours travaillé uniquement dans interface d’Excel. Lédition d’une macro va vous faire découvrir un nouveau composant d’Excel, l'éditeur Visual Basic, que nous allons employer dans tous les TP suivants. Prérequis :TP33 et 4 Fichier employé : TP_39_débat.xlsm ‘Temps de réalisation ; 5 minutes ‘Ouvrezle fichier TP39_débutxlsm, choisissez d'en aciver le contenu, puis enregistrez-le sous le nom TP_39.xlsm, 1} Chossissez dans le groupe Code de longlet Développeur Toption Macros. Vous pouvez également utiliser le raccourci AIL+FB, Dans la boite de dialogue Macro, sélectionnez la macro GrasAbsolu dans la liste Nom de fa macro, puis cliquez 2 | sur Modifier. 81 a z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} = =} fea fod 4 a > e ey wv to) c uv —¢ = = Po ray E] oa 7 m 4 = o Pad i 7) J > re CJ Em a] a mn ° Zz P= a] a] = ES = 2 = aa) 012 Dunod Copyright © 82 Travaux pratiques avec Excel 2007 et 2010 - Fonctions avancées La macto sélectionnée s ouvre dans Editeur Visual Basic.Vous pouvez afficher directement Editeur Visual Basic 3} en ciquant dans fonglet Développeur sur Viual Basc ou en appuyant sur les touches Alt+F1 La macro apparait dans le vlet principal de Iéditeur, la fenétre Code. Cest ceitefenétre que vous utliserez le plus souvent dans Féditeur, Nous examinerons certains des autres volets dans le TP suivant. Examinez le code de ls macro, Toute macro VBA est composée dinstructions, Celes-ci sont en anglais, contaire- 4 | ment aux fonctions intégrées employées depuis une feuile de calcul Une macro enregistrée débute par instruction Sub, suivi du nom de la macro, lui-méme suivi de deux paren- theses, et se termine par Frid Sub. Sub qui est l'abréviation de sous-routine. Viennent ensuite s‘ajouter quelques lignes de commentaire (nous y reviendrons), qui reprennent le nom de la macro, sa description et le raccourci clavier. Automatiquement insérées par Excel, elles apparaissent de couleur verte et débutent Par une apostrophe. La macro sélectionne la plage concemée par la totalité des cellules (Range("82"). Select), puis applique a la propneté gras (0014) de Fobjet Font sélectionné la valeur vrae (Select ion.Font.Bold = True), puis sachéve. Neng Sisoion Poste = tr Cette macro était une macro absolve. Quelle serait a difference pour une macro relative ?Fermez Editeur Visual 5} dase: vous revenez a Excel Dans Fonglet Deveioppeur,cique2 sur Macros. Dans la boite de dialogue Macro, sélectionnez la macro GrasRelat, puis ciquez sur Mochfer. Le code de la macro GrasRelatif saffche dans "Editeur Visual Basic La seule diférence avec la macro GrasAbsolu est absence de lnstruction de sélection: a macro s'eppiique 2 la sélection active, quelle quielle soit Vous venez de découvrir la seule difference réelle entre le code d'une macro ab- solue et celui d'une macro relative, ce qui vous permet de corwvertrfaclement lune autre et réciproquement. Si vous ne poursuivez pas imméciatement avec le TP suivant, fermez Editeur Visual Basic, puis fermez Excel (inutile enregistrer le fichien. 40} Editeur Visual Basic : fenétre Projet I est utile de se familiariser un peu avec le second composant le plus important de I'interface de iditeur Visual Basic, la fenétre Projet. Vous apprendrez dans ce TP a parcourir les macros dispo- nibles dans les différents modules, ainsi qu’a déplacer une macro d'un module a l'autre. Prérequis : 1P 33459 Fichier employé : TP_39.xslm ou TP_40_débutxlsm ‘Temps de réalisation : 5 minutes Si le classeur TP_39 n'est pas ouvert, ouvrez le dlasseur TP_40_débutxlsm et activez le contenu. Enregistrez le 1} casseur actt sous le nom TP_40.xism. Dans le groupe Code de longlet Développeur, ciquez sur Vsval Basic ou appuyez sur Alt+F 11, Talon enpogeFomuet Ooms Boon anager Bs: ¢ 3 8&klm.. ff sce complies cmp a Sa Dans la fenétre de l'Editeur Visual Basic, redimensionnez la fenétre Projet (en haut & gauche), de facon & en voir 2} tout le contenu. On y distingue trois groupes : Solver (SOLVERXLAM), le composant Solveur que vous avez installé au début de ce livre, VBAPROJECT PERSONALXLSB), votre dlasseur de macros personnelles, et VBAPROJECT (TP_40.XLSM), le casseur actif. Cliquez sur le signe + 8 cété de VBAPROJECT (PERSONAL.XLSB) pour développer larborescence, puis sur le signe + & cdté de Modules, puis double-cliquez sur Module 1 : vous voyez appa- raitre dans la fenétre Code la macro ItaliqueRelatif, que vous aviez stockée dans votre classeur de macros personnelles. En effet, les macros sont toujours stockées dans des modules, associés aux classeurs correspondants. FAD etn faerie Fon Forme Rept eaten Sth Conplmen Fete MG-d soon} nae ee Fi acon sae Licentiate + se ‘Sree, 83 a z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Développez, si nécessaire,larborescence VBAPROJECT (TP_40.XLSM), puis celle de ses modules, et douible-c- 3 | quez sur Moduler: vous voyez apparalte la macro GrasRelat = > ray zx oa 7 m 4 < o Pad i 7) = > re J > a] a mn ° Zz P= a] a] = Ss = 2 = aa) Copyright © 2012 Dunod. 012 Dunod Copyright © TP40 + Editeur Visual Basic : fenétre Projet Sélectionnez la totalté du code de la macro GrasAbsolu. Appuyer sur CirH+C, douile-ciquez sur Module, pla- 5} cez-vous en dessous de Finstructo End Sub de la macro GrasRelai, puis appuyez sur Cutt : la macro GrasAbsolu se trouve sous la macro précédente, séparée par un trait horizontal. [ats Effectuez un dic-droit sur Moduie2 et choisissez Supprimer Module2. Une bite de dialogue vous propose de 6 | ‘rexporter avant suppression, Cliquez sur Non : Excel supprime le module 2. Ce demier était superflu puisque vous avez copié la macto qui contenait dans Module. Lorsque vous enregisrez des macros, cela crée souvent 4s modules supplémentaires, ce qui complique ensuite un peu la recherche d'une macro : mieux vaut remettre un peu ordre, comme ic, et rssembler les macros d'un méme classeur dans un seul et unique module, sauf pour des besoins partcuiers, En effectuant un clie-droit sur Module, vous pourriez, en choisissant insertion > Module, ajouter un nouveau module 2 votre projet. Enregistrez et fermez le casseur TP_AO si vous ne poursuivez pas immeédiatement avec le prochain TP. 85 7 z = e 4 = =I a 4 4 [- 4 co} a = ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = PEC E REP ERAS Ewe eee) 1) od. 86 Rédaction d’une macro (I) lous avons jusqu’a présent examiné des macros enregistrées. Certes, enregistrer une macro est toujours un excellent point de départ, mais vous pourriez tout aussi bien vous fonder sur une macro préexistante. Fiehier emplayé : TP_40.xslm ou TP_41_débutxism “Temps de réalisution 5 minutes Si le classeur TP_AO nest pas ouvert, ouvrez le 1} casseur TP_41_debutxism et activez le conte- ru. Enregistrez le classeur actif sous le nom TPAtxlsm. Cliquez dans le groupe Code de onglet Développeur sur Macros, ou appuyez sur Alt=F8. Dans la zone Nom de Ja macro, nommez cette procédure AjustCol, puis cliquez sur Créer. LLéditeur de macro souvre, affichant la nouvelle procédure. Vous voyez dans la fenétre Code instruction Su 2 | AjustCot immeédiatement suivie sur la ligne suivante de instruction End Sub. Saisissez CoTunns. Select. entre ces deux instructions, appuyez sur Entée, puis saisssez Se] ect ‘an Columns .Autof it, Enregistez ensuite le dlasseur: i vaut toujours mieux enreaisrer un classeur avant dexécuter une macro que Ion a créée, afin d'éviter toute éentuelle perte de données. Fermez VEditeur Visual Basic. TA Fair Gas Mane been om Daa can Gai Corp Fae Sasssez dans la cellule 82 le mot géogrs Dans longlet Developpeur, clique sur Macros, sélec- 3.| quement : ce texte excéde la largeur dela | 4 | tionnez la macro AjustCol et cliquez sur Exécuter: la cellule largeur de la coloane ssuste automatiquernent Enregjstrez et fermer le dasseur TP_Al si vous ne poursuvez pas immediatement avec le prochain TP. TP i : ; }42 | Rédaction d’une macro (Il) a macro rédigée lors du TP précédent fonctionne, mais est dépourvue de tout commentaire expli- catif et n’utilise aucune touche de raccourci. Nous allons y remédier dans ce TP. Prérequis : TP 33 441 Fichier emplayé : TP_41-xlsm ow TP_a2_début.xlsm ‘Temps de réalisation : $ minutes 7 | Stledosseur TP_a1 niet pas ouvert ouvez le classeur TP_42_débutxlsm et actvez le contenu. Enregistrez le classeur actif sous le nom TP_42.xIsm. Cliquez dans le groupe Code de fonglet Développeur sur Macros, ou appuyez sur Alt+8. Dans la zone Nom de la macro, sélectonnez la macro AjustCol, pu's diquez sur Options. Saisissez comme raccourci Maj+€, puis saisissez comme description Ajustement automatique de la lar- geur des colonnes. Cliquez sur OK. Cette démarche vous est famiiere puisque vous Faviez deja effectuee dans le TP 36, Cliquez dans le groupe Code de onglet Développeur 2 | sur/mocros, ou appuyer sur AltHF8. Dans la zone Nom de la macro, sélectionnez la macro AjustCol, puis ci quez sur Modifer. La macro s'ouvre dans Editeur de macro. Sous Finstruction Sub) AjustCo’(), appuyez sur Entrée pour réer une nowvelle ligne, saisissez une apostrophe suivie d'un espace ct du texte Ajustement automatique de la largeur des colonnes. Dés que vous déplacez le curseur sur fa ligne suivante, la ligne ajoutée devient verte: cest un com ‘mentaire, util la compréhension dune macro mais non ex ploitée comme code au sens strict. Placez-vous 3 la fin de finstrucon Se] ect. Co} uns, Ajoutez sufsamment despaces pour que le curseur se 3 | trouve sous le du mot fa du commentaire précédent, puis sasssez' Sélection de toutes les colonnes. Posez votre curseur@ afin de Finstruction suivante, ajoutez des espaces de la méme facon et saisisse2 ' Activation de Fajustement automatique Vous pouver ajouter des commentaires aprés une ligne dlinstructions pour en explicit le sens. Dans réditeur Visual Basic, liquez sur 4 | Enregiser, puis fermez Féditeut. Dans la feuile de calcul, saisissez dans la cellule C2 le mot historiquement, puis appuyez sur Cirt+Map+C : les, e ey wv to) c uv —¢ = 87 PEC E REP ERAS Ewe eee) 1) = Rédaction d’une fonction personnalisée oO": une routine, vous pouvez écrire une fonction personnalisée, disponible ensuite dans n‘im- porte quelle feuille de calcul du classeur qui la contient (ou dans tous les classeurs si vous avez enregistré la fonction dans votre Classeur de macros personnelles). Une routine débute par Sub et se termine par fii Su. Une fonction commence pat Fuict {oil et s‘achve par Fi Furic on. La principale différence, hormis ce nom, est qu'une fonction renvoie a un résultat, contrairement a une routine. Lintérét d'une fonction personnalisée est de réduire le temps de saisie nécessaire si elle doit étre employée répétitivement, et qu'un copier-coller n'est pas facile a réaliser (la formule se trouve dans un autre classeur, par exemple). Nous allons concevoir ici une formule qui répartit des commerciaux en classes selon leur chiffre d'affaires. Prérequis :7P 33442 Fichier emplayé : TP_43_ début xlsm “Temps de réalisation 5 minutes Quire le classeur TP_A_débuit xlom, active le contenu et enregistre7-le sous le nom TP_43 xls 1} choisissez dans ronglet Développeur icone Visual Basic ou appuyez sur Alt+FIT pour ouvrirFéditeur Visual Basic Dans la fenétre Code, saisissez Funetion TEST(a), puis appuyez sur Entrée. Léciteur ajoute automatiquement tune ligne vierge, puis en dessous Finstruction End function. Saisissez entre les deux instructions la (longue) consigne suivante 2) Test - 11fta> 175000, 1, I1f(a > 150000, 2, IIf(a > 120000, 3, IIf(a > 100000, 4, IIfla > 80000, 5, 6))))) Remarquez que dans cette instruction, l'expression de formule Si(condition, si vrai ;si faux) devient lif(condition, si vray, st faux). Comme cela a déja été signalé, toutes les commandes sont en anglais. Si vous commette7 une faute de frappe, Velteur Visual Basic vous le signaera. Vérifiez vore saisie Fates attention en particulier au nombre de parentheses fermantes Cette fonction effectue des tests conditionnels successifs sur la cellule référencée comme paramétre, Selon sa valeur, la fonction renvoie un nombre compris entre 1 et 6. Le nom de la fonction est TEST, tandis qu’entre parenthéses figure son unique parametre la calle testee La ligne est trop longue pour érefaclement isble. Pace2-vous juste avant le quatriéme | F (mais aprés espace 3} uisuit la virgue, insérez un trait de soulignement et appuyer sur Entrée. La combinaison espace trait de soul gnement (set indiquer la suite d'une ligne dinstuction. © 2012 Dunod. Copyright P43 - Rédaction d'une fonction personnalisée Dans Editeur Visual Basic, ciquez sur Enregistrer, puis choisissez dans le menu Fchier option Fermer et retourner 4 | a Microsoft Excel vege T5.0m err in Spine Mode Le chitfre 4 apparait dans la cellule D2. Copiez la formule dans la plage D3:D 2. Vous voyez apparatre dans les 6 | celuies de la plage les classes respectves des commerciaux. 7 z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = 7a z 1 wom Région Chie takes ‘aespn ves ‘usec [lowtow noes 2000 [5 oupont 00 S esaque sd sono 7 Fougeses ‘oor 30)Nyen cent ‘oo Une fois une fonction créée dans féditeur de macros, vous pouvez employer exactement comme une des fonctions Intégrées cExcel, et vous epargner ains! une salsie laborieuse. Remarquez que cette fonction personnalisée a recours a Un codage « en dur » des seuils. Vous pourriez facilement, en les transformant en paramétres, construire une fonction bien plus souple de la forme TEST(a, b, ¢ d, ¢, 0, ou ba f feraient référence aux valeurs seuils que vous souhaitez utliser. Enregistrez et fermez le casseur TP_43.xism, PEC E REP ERAS Ewe eee) 1) 90 Création d’une procédure VBA baa | pour un événement U n des aspects les plus intéressants des procédures VBA est la possibilité d'écrire une macro pour un événement. Un événement est une situation ou une action précise a laquelle vous pouvez attacher du code : ce dernier s‘exécutera dés que l'occurrence se produira. Toutefois, seuls certains événements relatifs & certains objets peuvent étre associés & une macro. De facon générale, une procédure associée 4 un événement porte obligatoirement le nom Sub nomobjet_nomévénement. Lexemple ci-dessous utilise "événement Open pour exécuter une macro lors de ouverture du clas- seur actif. dant ‘Temps de réalisation : 5 minutes Quyrez un nouveau dasseur et enregistrezte 1] comme ciasseur prenant en charge les macros sous le nom TP_44.xism, Dans le grauipe Cade de Yanglet Dévelepneur. cli quez sur Vsual Basic. Dans la fenétre Projet, cliquez avec le bouton droit sur lobjet ThisWorkbook, puis sur Code. Si la fenétre Projet nest pas visible, dans le menu Affchage, diquez sur Explorateur de projets. Les termes fenetre Projet et Explorateur de projet sont symonymes, ene pies Dans la liste Objet au-cessus de la fenétre Code, sélectionnez Werkbook. Cette opération crée automatiquement 2 | une procedure vide pour événement Open. Par simple curiosité, diquez sur la fleche située sur la droite, 8 cté cde Open : vous voyez les tres nombreux événemenis de objet Workbook aunxquels i serait possible dattacher ‘une macro, Laissez Open sélectionné. a De 2012 Dunod. pyright Cor TP44 + Création d'une procédure VBA pour un événernent Insérez le code suivant entre les instructions Sub et End Sut 3} MsoBox date Worksheets("Feuf11").Range(“A1") Select with Selection sNalue = "Orignal Trad." & vbLf & "Direction Commerciale” & vbLf & Date ‘Font.Bold = True ‘Hort zontalAlfgnment = xICenter “Rows. AutoFit End With Columns("A:A").ColunnWidth = 22 Range("B2"). Select, [roo Fessace Sos Worabook Spent) Te Basculez vers Excel et enreistrez le classeur, puis fer- 4 | mez-le. Ouvrez & nouveau le classeur TP_44 xlsm. Des lors que vous en avez activé le contenu, Excel exécute la procédure « Workbook Open » qui ache la date courante dans un message. Cliquez sur OK dans la bolte de dialogue de ce demier La cellule A7 de la feuille 1 affiche automatiquement un logo mis en forme, tandis que le curseur se place inéluc- 5} tablement sur la cellule 62. nga ad 2afafaon aT co Cette procédure mérite quelques explications, La premiére instruction, sc60x Date, crée une boite de message renfermant la date. La seconde instruction debutant par Worksheets sélectionne la cellule AT de Feu Les lignes suivantes agissent toutes sur la sélection active : on utilise instruction ii th qui permet de modifier simultané- ‘ment plusieurs proprietés de la sélection active. Ic, une chaine de caractéres est affectée & la valeur de la cellule (remar- quez lemploi du caractére de concaténation &, ainsi que celui du caractére spécial vb f, une constante Visual Basic équi- valent a un retour 8 la ligne). Puis sont appliqués une mise en gras, un centrage et I'ajustement de la hauteur de la ligne. La ligne suivante ajuste la largeur de la colonne tandis que la demire instruction place le curseur sur la cellule B2. Fermez le classeur TP_44 sans lenregistrer. 7 z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = 91 PEC E REP ERAS Ewe eee) 1) od. 92 uly Liste des membres et Information rapide automatique Ee“ propose plusieurs précieux outils pour faciliter la rédaction de macros. TP_45 débutxim ‘Temps de réalisation : 5 minutes Quvrez le classeur TP_45_début, activez le contenu, puis enregistreze sous le nom TP_45.xism. 1} Ouveez'Féditeur VBA, puis placez-vous dans la sous routine Workbook _Opend. Saisisse2 au-dessus de Finstruction Fnd_ Sub Finstruction Rane, effectuez un clic-droit puis choisissez /nformations Express. Vous voyez apparatre la syntaxe de Finstruction Farge. End Range(Calt, [Csi As Range Saisisez (B2"?S. Vous voyer apparaitre une zone de liste déroulant, correspond 3 la liste des membres, qui 2 | propose les méthodes et propriétés de Fobjet qui précéde le point. Select est présélectionné : double-ciquez ‘essus pour insérer instruction dans le code Dans le menu fichier de IEditeur Visual Basic, chosissez Fermer et retoumner d Microsoft a Excel. Dans la cellule 3} Ci, sasissez =som. Linformation rapide automatique propose les fonctions debutant par som. oun CH 2 cere oe 000 11 Neyer conte 120000 2 vanes conte 10 a aan a Copyright © 2012 Dunod. TP45 « Liste des membres et Information rapide automatique Cliquez sur Somme : une parenthése est automatiquement ajoutée. Saisissez la plage C3:C13, puis fermez la 4 | parenihese et appuyez sur Entrée. Dans la cellule D2, sasissez =Tes : information rapide automatique est dspo- riible méme pour des fonctions personnalsées créées par vous-méme, et propose la fonction Test. Complétez Tinstruction en rétérencant la cellule B3. Enregistrez et fermez le dasseur TP_45.xism. eh som apion cute toes 4 oaess our am |e 5 uteur ors avon | ean rermeor © boport ee some [STE a z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = 93 PEC E REP ERAS Ewe eee) 1) 94 Débogage élas ! Lexpérience le prouve, méme la macro la plus soigneusement écrite peut aboutir a des conséquences inattendues. Pour obtenir un fonctionnement correct, vous devez découvrir les erreurs de programmation qui s’y cachent : ce processus est appelé débogage. Toute programma- tion peut entrainer plusieurs types d'erreurs. Dans ce TP, vous allez apprendre & les connaitre et a les éliminer. Prérequis : TP 334.45, Fichier employé : TP_46_début-xlsm “Temps de réatisation : 5 minutes 7] Qiares le deseur TP_46. debunk et enessvenie sous le nom TP_Asxsm, Cliques nimpore 0 das Felt Oueez 'Eteur Visual Basic et examine? la procédure de fonction Tes, située dans le Module 1 : vous voyez cuiune partie dt code est afchée en rouge, ce qu indique une erreur de syntaxe ou de compilation. Ce type derreur est le plus fréquent et se produit lors d'une faute de frappe ou du non-respect de la succession de mots dune ou de Pliseurs instructions Pracez-vous sur le If, ajoutez puis supprimez un i, puis placez-vous sur instruction End. Sub : une boite de da- 2 | logue signale une erreur de compilation. UEciteur VBA est équipé d'une fonction de verification automatique de lasyntaxe qui contrle la valid dune ligne de code dés que vous la quitez Si détecte une eur, iafiche cette bote de message et place la ligne eronée en rouge. Ferme la alte de calogue. fn decompo enter (ee | LLinstruction fautive est affichée en rouge, la partie erronée étant placée en surbrilance. Ajouter le i manquant et 3 | placez-vous sur instruction End Sub : toute la ligne est désormais affchée en noir IIn'y a plus d'erreur évidente. Fermez lEditeur Visual Basic pour revenir & Excel Copyright © 2012 Dunod. TP46 « Débogage Dans longlet Développeur, diquez sur Macros. Choisissez la macro Importiste, puis diquez sur Exécuter : une 4 | boite de dialogue signale une erreur d'exécution, Cet le second type dlerreur qui se produit lors de Texécution du code. Meme sila syntaxe est correcte, e programme peut tenter¢'effectuer une tache impossible, comme ic charger un fichier depuis un dossier inexistant. La bote de dialogue affche généralement la nature de Verreur. Fermez 1. {Vous pouver faciement corriger cette macro : modifiez le chemin daccés en choisissant celui qui mene vers le dosser contenant le fichier texte TP_38 0. Cliquez sur la feuile Liste, puis dans le groupe Code de Yonglet Dévelogpeur sur Macros, choiissez TiRégion et 5 | ciquez sur Executer. La macro fonctionne parfaiterent, mais le résultat est pas celui escompté =i se produit ici ne erreur logique. Dans le cas présent, le tine seffectue pas sur les bonnes cellule. Ce type dierreurs est souvent le plus complexe a corriger. Celles-ci peuvent méme parfois passer inapercues et aboutir & Votre insu & un résultat erroné. Heureusement,Féiteur VBA dispose d outils permettant de venir & bout de tous ces types erreurs: Cest ce que nous allons voir dans les prochains TP Enregistrez et fermez le dasseur TP_46.xism. 95 7 z = e 4 = =I a 4 4 [- 4 co} a = ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = PEC E REP ERAS Ewe eee) 1) 96 Compilateur VBA compilateur VBA vérifie la syntaxe des lignes de code au fur et & mesure de leur saisie, comme nous 'avons vu dans le TP précédent. Il détecte les erreurs igne au moment ou elles se pro- duisent. Des erreurs de syntaxe peuvent toutefois couvrir plusieurs lignes, auquel cas elles ne sont pas immédiatement identifiables. Prérequis : TP 33.446 Flchier emptoyé : TP_47.xslm ‘Temps de réalisation : 5 minutes Ouvrez le icier TP_47_debutxlsm et enregis- 1} wez-e sous le nom TP_A7xlsm, Dans le groupe Code de l'onglet Développeur, Grew de compdation: dliquez sur Visual Basic Dans Editeur Visual Basic. A iquez dans le menu Debogage sur Compiler VBAProject. Une boite de dialogue signale une erreur de compilation, ici absence d'une intruction End 2 ws With, Fermez la boite de dialogue. Examinez la procédure MiseEnForme. Aucune ligne n'est affchée en rouge : de prime abord, la syntaxe est cor- 2 | recte. Remarquez toutefcs la présence d'une apostrophe devant le premier End t, transformant cette instruc tion en commentaire : Cest la cause de erreur, Dans a rélté, cette instruction serait probablement totalement absente, compliquant identification du probleme. La boite de dialogue signalant erreur de compilation indique le type de celle-c ainsi que la ligne od elle s'est produit Apres avoir corrigg, vous devez recompile le projet, et cela chaque fis quien découvre une. 012 Dunod Copyright © ‘TP47 « Compilateur VBA Enlevez la marque de commentaire, puis choisissez & nouveau dans le menu. Débogage Foption Compiler 3 | vaarroject. Le compilateur ne décle plus c'erreur de compilation. Enregistrez le fichier puis ciquez dans Fichier sur Ferme et retoumer dans Microsoft Excel, Dans le groupe Code de l'onglet Développeur, ciquez sur Macros, choisissez MiseEnforme puis cliquez sur Exécuter. Votre tableau est partaitement mis en forme. Enregistrez et fermez le dasseur TP_47.xlsm. ERBEES errr 7 7 z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = = > ray zx oa 7 m 4 < o > SI 7) = > re J Pd a] a mn ° Zz P= a] a] = Ss = 2 = aa) 2012 Dunod. pyright Cor 98 1P suc 7 Exécution pas a pas jarfois, le fait d’identifier l'endroit ou’ se cache une erreur de logique ou d'exécution n'est pas chose évidente. L'exécution d’une procédure avec un arrét a chaque ligne, nommée exécution pas a pas, permet de ralentir 'application de la procédure et d’examiner la facon dont elle traite chaque ligne. Cette stratégie met souvent en évidence un dysfonctionnement. Prérequis : TP 3347 Flehier employé : TP_48_début-xsm ‘Temps de réalisation : 15 minutes Ouvrez le dlasseur TP_48_deébuitxlsm et actvez le contents 1 | Bans le groupe Code de Fonglet Developpeur, choisissez Macros. Selectionnez la macro MiseEnForme et ciquez sur Exécuter: la macro fonctionne parfaitement, mais le résultat n'est pas celui attend Fermez le classeur sans Tenregistrer. Qurez-e & nouveau, enregisrez-e sous le nom TP_48 xkm et actvez le 2 | contenu Dans le groupe Code de 'onglet Développeur, choisissez Macros. Sélecionnez la macro MiseEnForme et diquez sur Pas & pas détailé Copyright © 2012 Dunod. TP48 - Exécution pas 4 pas Editeur Visual Basic s'ouvre sur le code. La premiére instruction de la macro est surlignée en jaune. Organisez 3 | es fenéires de VEditeur Visual Basic et Excel de fagon a les avoir une au-dessus de laure et pouvoir suivre fa- ilement les effets de la macro sur les données, 7 eee ‘Appuyez sur la touche F8 pour passer & la seconde ligne de la procédure. Cette touche fonctionne aussi long- 4 | temps que le point c'insertion se trouve quelque part dans la routine. Observez bien ce que fait la procédure pendant que vous l'examinez pas & pas. Ayant about (au bout d'un temps certain la section ' Mise en forme des éuiquettes de colonne (gras centré, fond coloré, encadremend), vous vous apercevez que la sélection est incorrecte. instruction Range("82:02") Select est erronée, la bonne plage est B2:E2. ose ie 7 z = e 4 = =I a 4 4 [- 4 co} a = ay 4 -} 4 =} fea cl 4 a > e ey wv to) c uv —¢ = = > ray zx oa 7 m 4 < o Pad i 7) = > re J Pd a] a mn ° Zz P= a] a] = Ss = 2 = aa) Copyright © 2012 Dunod. 100 Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Notez cette ligne, puis continuez a appuyer sur F8. Tout se déroule normalement jusqulau demier groupe d'ins- 5} ructions dela macro: Vinstuction Renge(*Cil:ell").Select est aussi ervonge, ce devrait etre Range("C12:E12") Select. Poursuivez la verification jusqu'a la fin de la procédure. en Modifiez les deux instructions fautives : Range("B2:02").Select en Range("B2:2")Select et G | Rance *ci12£11" Select en Range" 12:12") Select. Cela étant fat, enregistre le code, revenez a Excel puis relancez la macro MiseEnForme : cette fos, le tableau est correctement mis en forme. FERESP PEP EP EP Vous auriez probablement pu repérer ces erreurs sans recourir 4 chaque étape détallée, mais Cétait un exemple. Enregistrez et fermez le fichier TP_48.xlsm. TP ‘ ie }49 | Points d’arrét i la procédure qui contient des erreurs est longue, vous risquez de passer beaucoup de temps jparcourir les lignes de code avant d’arriver Vendroit qui , surtout si vous, cortigez les erreurs au fur et & mesure. C'est la qu’un point d’arrét peut vous aider. Il identifie une ligne de code spécifique, arrétant le programme lorsqu'll atteint ce point. Vous pouvez ensuite conti- nuer pas pas. Prérequis : 1P33 4.48 Fichier employé : TP_49_débot lm “Temps de réalisation : 5 minutes ‘Ouvrez le classeur TP_49_débutxism et enregistrezle sous le nom TP_49.xsim, Activez le contenu, 11} Danse groupe Code de fonglet Developpeur, diquez sur Visual Basic pour afcher Editeur Visual Basic. Atteignez la procedure Sub MseEnForme. “MF Boer Eston fhage eatin Format Diogige Kciton Oat Conplenet }BG-@ sagn oc > wake THR @ vcr pag ea a [> 2 vereyer easomtmnsey | | risia > so0000, 4, Divers coe fea function Redimensionnez les deux fenétres pour voir simultanément IEditeur et Excel, Placez-vous sous le commentaire 2} ‘Tri du tableau per région et chiffre d'affaires et diquez dans la marge gauche de instruction Range("B2:E13").SeTect : un point rouge apparait dans la marge, tandis que la ligne est surlignée en rouge. Vous pourriez tout aussi bien diquer sur Débogage, Basculer le point darét, ov appusyer sur la touche F9 pour parvenir cu me result paz cégicn e+ chiftre avaftaires ° [Activeliorkbook. Worksheets (*Feuili") .Sore.SortFields.Clear Activellorkbook. Worksheets (*Feuili") .Sort.SortFields.Add Key:~Range("C3:C13") _ SortOni=xiSoresVaiues, Orderi=xiAscending, Datadpeion=xiSoztormal 101 a z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = = > ray zx oa 7 m 4 < o Pad i 7) = > re J Pd a] a mn ° Zz P= a] a] = Ss = 2 = aa) Copyright © 2012 Dunod. 102 Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Exécutez la procédure, soit depuis Excel, soit depuis "Editeur Visual Basic en cliquant sur le bouton Exécuter de la barre d'outils, en choisissant Exécuter Sub/userForm dans le menu Execution ou en appuyant sur F5. La procédure Sexécute jusqu’au point darré, la ligne concemée affichant un surlignement rouge et jaune. “ri du tableau par région et chiffre d'affaires ‘ActiveWorkbook. Worksheets ("Feuili") .Sort.SortFields.Clear ActaiveNorkbook.Worksheets ("Feuili") -Sort.SortFields.Add Key:=Range("C3:C13") _ ) SortOnimxlsortOnValues, Orderi=xlAscending, Davadption:=xlSorticrmal 4 ‘Appuyez sur F8 pour continuer progressivement Fexécution du reste de la procédure. La commande de point «arrét est une bascule arét/marche. Pour dter un point d'arré, suivez les mémes étapes que pour le placer. Une procédure peut comporter plusieurs points darts, Pour tous les supprimer, choisissez Suoprimer tous fes points darrét dans le menu Débogage. Lorsque vous fermez un classeur contenant des procédures dotées de points darrét, ces demiers sont automatiquement supprimés. Fermez le classeur TP_49.xism, lectin RF forgness Jee 5 tm tna ae bien] TP a i ‘ Fenétre Espions I est parfois nécessaire, pendant un débogage, de connaitre la valeur d'une variable ou d’une propriété. Vous pouvez surveiller celle-ci afin de suivre ses évolutions pendant l'exécution de la procédure. Prérequis :TP 33 849 Fiehier employé : TP50_débutxlsm ‘Temps de réaisation : 5 minutes COuvrez le lasseur TP_S50_débutxism et enregistez-e sous le nom TP_50.xsm, Activez le contents 1} Ouveer VEiteur Visual Basic, Dans la fenetre Code de léditeur, dans la procédure MiseEnForme, sélectionnez sur la troisiéme ligne d'instruction Acti veCel 1. [cener 3] [usstarorne | Sub MiseEnFore() + Macro MiseEnForne + ajour de 1'étiquerte de colonne Classe Range ("E2*) Select + Aftectation de 1'instruetion Test () et copie dans 1a colonne, Range ("ES") Select Aetivecell.FormulaRiCl = "Test (RC{-21)" ad Dans le menu de Editeur. choisissez Déboaaae, Espion express, ou appuyez sur Mai-+F9. La boite de dialoaue 2 | Espion express appara. Cliquez sur Ajouter. 103 a z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = = > ray zx oa 7 m 4 < o Pad i 7) = > re J Pd a] a mn ° Zz P= a] a] = Ss = 2 = aa) Copyright © 2012 Dunod. 104 Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées 3 | “expression ActveCell apparait dans la fenétre Espions. Placez-vous sur instruction Sub HisetnForne, puis, dans le menu Débogage, choisissez Pas @ Pas détailé 4 | Appuyer de acon répétiive sur FB pour parcourir la procédure espionnée en mode pas a pas et odserve7 les modifications de la valeur de la variable espionnée (ic, la valeur de la cellule actve) pendant exécution de la procédure Vous pouvez ainsi sive nlimporte quelle variable ou propriété. Vous pouvez espionner plusieurs variables simultané- ‘ment. C'est un outil précieux en cas d'erreur de logique non apparente. Enregisrez et fermez le classeur TP_SO.xism. 2012 Dunod. pyright Cor 1P : ee 51} Fenétre Exécution L fenétre Exécution de I'Editeur Visual Basic affiche le résultat d’une fonction ou d'une propriété. Prérequis : TP 33 450 Fichicr employé :TP_S1_éébutxism “Temps de réalisation : 5 minutes 7] Sure? le dasseur T_St_debutasm et enegstreze sous le nom TP_Stasim. Adve le contenu Ouvrez IEditeur Visual Basic Dans le menu Affichage, cliquez sur Fenétre Exécution. Vous pouvez également appuyer sur Ciri+G. La fenetre apparait dans I Editeur. Dans Excel, sélecionne? la cellule D2. Dans VEdteur 2} Visual Basic, dans la fenétre Exécution, saisissez “eravacet 2ActiveCellInterior-TintAndShade, puis appuyez eseceeari sur Entrée : la valeur actuelle de la propriété apparait en dessous. Dansla fenétre Ex¢cution, sasissez @Aetiveworkbook. 3 | Path, puis appuyer sur Entrée le chemin du classeur TacrivecelL, Interior. Tistanshade acti apparait (le votre sera probablement citférent de oe celui de la capture d'écran). mAtereest> Cette fenétre Exécution permet également de tester des fonctions personnalisées. Saisisez dans la fenétre 4 | Execution 7Test(190000). Vous obtenez la réponse correct, 1. Cette fonction a €té programmée correctement. Sila réponse est fausse, vous saurez que vous devrez vous remettre & Fouvrage Ce type dessai permet de mieux vous familariser avec les objets et leurs propriétés et de tester des fonctions personna- lisées aux abords des valeurs frontiéres susceptibles de poser probleme. Enregistrez et fermez le dasseur TP_51xIsm. 105 a z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = PEC E REP ERAS Ewe eee) 1) 106 Ameélioration d’une fonction 52 | intégrée d’Excel xcel dispose d'un nombre impressionnant de fonctions intégrées. Parfois, cependant, celles- ci pourraient ne pas correspondre exactement a vos besoins. Il est alors souvent facile de créer une fonction personnalisée qui réponde mieux a vos attentes. Par exemple, la fonction ALEA d’Excel génére un nombre aléatoire compris entre 0 et 1. Vous pourriez souhaiter disposer d’une fonction renvoyant une valeur comprise entre deux bornes (ce qu’effectue en fait déja la fonction Excel ALEA. ENTRE.BORNES), mé les paramétrable, et vouloir en outre que la fonc- tion soit « résistante aux erreurs », cest que absence d’un ou de plusieurs paramétres n’en- traine pas d’erreur. avec un nombre de déci Prérequis : TP 334 51 Fichier employé :néant Temps de rélisation : 5 minutes T] Suez un nouveau caseuretenregistrez le comme casseur prenant en charge es macros sous fe nom TP_S2 xlsm. Dans le groupe Code de onglet Devefoppeur, cliquez sur Macros. Nommez-la nouvelle macro AleaPerso et liquez sur Créer. Dans la fenéire Code de tditeur Visual Basic. modifiez Tinstruction Sub en Funetion. Linstruction Find Sub 2} change automatiquement en Frid Furict ion. Comrigez instruction Function AleaPerso() en Fumetion AleaPerso(min, max, dee). Vous venez de doter votre fonction de paramétres. Function AleaPerso ain, max, Gea) Saisissez maintenant le code de la fonction entre les deux instructions : AleaPerso = Rnd * (max ~ min) 3) + min Rnd est la fonction Visual Basic correspondant a la fonction Excel ALEA. Cette valeur étant comprise entre 0 et 1, vous la multipiez par étendue souhaitée (max-min) et lui ajoutez la valeur rinimale, 4 7 TP52 + Amélioration d'une fonction intégrée d’Excel Pour gérer le nombre de décimale, complétez comme suit la fonction : AleaPerso = int(Rnd * (max ~ min) t-min*10"dec)/10*dec. Vous multipliez le résultat obtenu par 10 a la puissance dec Goit 1 lorsque dec est égal & 0) ; vous le transformez fen entier puis le divisez par 10 a la puissance dec : le nombre de décimales sera bien égal 8 dec. Enregistrez le classeur, revenez & Excel, puis saisissez dans la cellule B2 = sur Entrée. Vous obtenez une valeur comprise entre 50 et 100 avec une décimale. Le chiffre étant aléatoire, il devrait étre différent de celui de le capture d'écran, SF] memento) [2] « ° ' Dans la cellule 83, sasissez dans la cellule B2 = AleaPerso0) : Excel alfiche le message d'erreur #VALEUR, Pour Cette fonction, les arguments sont actuellement abligatoires. = Te A maeaPesot) =" 766 Pour coriger ced, affchez la fonction dans rédlteur Visual Basic et modiieza en Function ‘AleaPersotoptional min = 0 optional max = 1, optional dec = 3). Le mot-clé opt ‘onal signale que fe paramétre est fecitat Il ui est ffecté une valeur par défaut. Dans le cas présent, si aucun parameétre rvest fourni par Tutiisateur, le nombre obtenu sera un nombre compris entre 0 et 1 doté de 3 décimales, [omen al acre Enregistrez le classeur, revenez a Excel, puis saisissez dans la cellule 83 = AleaPerso0. puis appuyez sur Entrée. Vous obtenez une valeur de la forme attendue. = TEA] aesrenat a om Lorsque vous déclarez des paramétres faculatifs, ceux-ci ne peuvent étre suivis que de parametres également facuitaifs Dans une dédaration, vous devez done placer en premier les paramétres obligatoires, puis les parametres facultatifs. Enregistrez et fermez le dasseur TP_S2.xsIm. 7 z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = 107 PEC E REP ERAS Ewe eee) 1) 2 Dunod 108 Exportation et importation d’un 3 | module de code lutét que de copier une procédure du module d’un classeur dans le module d’un autre classeur, est souvent intéressant d’importer la totalité d’un module existant dans un nouveau classeur. Pour ce faire, vous devez d’abord exporter le module concerné. Prévequis : TP 3352 Fichier employé : TP_S3_début-xsm ‘Temps de réalisation: 5 minutes Ouvrez le fichier TP_53_débutxism et enregistrez-le sous le nom TP_53.xlsm. 1] Ouvrez réditeur visual Basic. Dans Texplorateur de projet, effectuez un clc-croit sur Module, puis choisissez Exporter un fichier. rope de AP poet tp on tes, Dans la boite de dialogue, saisissez comme nom du module FonetionsPersos01. Remarquez que le fichier 2} possede une extension bus, Naviguez jusgu‘au dossier des exercices, puls cliques sur Eineuiuer Emvewien: [peed a] Oc EB Copyright © 2012 Dunod. TPS3 + Exportation et importation d'un module de code Fermez le classeur TP_53.xlsm. Ouvrez un classeur vierge. Ouvrez Editeur Visual Basic. Dans IExplorateur de 3 | projet, eftectuez un cic-droit sur la igne VBAProject (classeu2) (le nom du clesseur peut differ, puis choisissez Importer un fichier. Dans la boite de dialogue, naviguez jusqu’au dossier d’exercices,sélectionnez le fichier FonctionsPersosO1.bas puis 4 | ciquez sur Ouvnr : une arborescence Modules apparat, avec le module 1 contenant les procédures du module importé. Celles-c sont désormais disponibles dans votre nouveau classeur, Sill est facile de copier-coller une procédure d'un module dans un autre lorsque deux classeurs différents sont ouverts dans Excel, le fait d'exporter et d’importer des modules comprenant vos routines favorites est un excellent moyen de sgagner du temps. Fermez le nouveau classeur sans lenregistrer 109 7 z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = PEC E REP ERAS Ewe eee) 1) 110 | Sa | Création d’une interface utilisateur rout au long de ces derniers TP, vous avez vu comment employer des macros ou procédures Visual Basic afin de faciliter votre travail (ou celui de vos collaborateurs). II est toutefois possible d’al- ler beaucoup plus loin, en proposant une interface utilisateur dédiée a un classeur qui regroupe la majorité (sinon la totalité) des actions susceptibles d’étre effectuées par un utilisateur. Il existe deux facons de procéder : placer sur une feuille de calcul des contréles ActiveX qui agissent sur la feuille & ide de procédures VBA, ou créer une interface utilisateur totalement distincte, dotée de contréles. Une telle interface se nomme UserForm (formulaire utilisateur) avec Excel, et c'est ce que nous allons analyser dans ce dernier TP. Linterface créée aura pour but de gérer le fichier des ventes des commer- ciaux que nous avons déja rencontré. Vous avez déja examiné la majorité des procédures qui vont étre employées : seules les nouvelles seront détaillées ici. Prérequis : 7P33.4 53 ‘chier employé :TP_54_débutxism ‘Temps de réalisation : 20 minates Ouvrez le fichier TP_54_débutxsm et enregistrez-te sous le nom TP_S4.xlsm, Active le contenu 1} Ouvez rEditeur Visual Basic. Dans le menu insertion, choisissez UserForm. Un formulaire utlisateur vierge s'af- fiche dans Ieiteur, ainsi que la fenétre fttante de la Bote @ outs Copyright © 2012 Dunod. TPS4 + Création d'une interface utilisateur Dans la fenétre Proprietés de IEiteur Visual Basic, en bas & gauche, modifez la propriété Caption de UserForm? 2 | en Chiffres d'affaires. Lintitulé se moditie dans la barre de titre du formulae utlisateur. Changez ensuite la valeur de la propriété Name en frmCA. rm est abrévation de formulaire, et atibuer un nom plus explicit fa- litera une référence a e formulaire dans une procedure, Vous allez maintenant construire le contenu de Finterface utisateur, Dans la Borte @ outils, cliquez sur Foutil Bouton 3 | de commande, puis ciquez en haut au tiers du formulaire. Appuyez sur la touche Cir et, en la maintenant enfon- Cée, glssez-déposer le bouton juste en dessous du précédent pour y créer une copie. Répétez operation pour placer une demiere copie en bas a droite du formulaire, Ne vous préoccupez pas de les placer parfaitement, nous le fe- rons ultérieurement. 7 z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} 4 =} fea fod 4 a > e ey wv to) c uv —¢ = | lsese un element sioutr, Dans la Bote cutis, ciquez sur Cacre, puis placez un contre cadre entre les deux boutons centraux. Double-diquez ensuite dans la Baite a outils sur Bouton cfoption, cliquez 2 fois dans le cadre puis diquez & nouveau sur Bouton d'option dans la Boite @ outis pour désactiver cet out m1 PEC E REP ERAS Ewe eee) 1) 112 Travaux pi iques avec Excel 2007 et 2010 ~ Fonctions avancées Nous allons maintenant nommer les controles et défnir leurs inttulés. Tout cela va s‘ffectuer dans la fenétre 5.) Proprietés. Choisissez dans la zone du haut le nom du controle (Sa propriété Name actuelle), puis cherchez la propriété a corriger dans la liste située en dessous. Modifiez comme précisé c-apres les proprietés Nom contréle Propriété Name. Propriété Caption ‘Autre propriété (nom : valeur) Button? brlmport Import du fichier Default: True Framet orp Ti OptionButton’ optCa Par chiffres affaires Value : True OptionButton2 optReg Par régions et chiffres daffaires Button2 biformat ‘Mise en forme Button3 biCancet Quitter Cancel : Tue Ceci demande probablement un peu d'explications. La propriété Name est le nom du contréle, tel quil sera référencé dans le code, La propriété Caption est le libellé du contréle. La propriété Default, fixée a True pour un seul controle, deéfinit celui qui sera actif si utlisateur appuie immédiatement sur Entrée. La propriété Value d'un bouton Algner sur {a feuile > Horizontalement. Ciquez sur le formulaire en dehors de tout controle, appuyez @ nouveau sur Cir et en main- tenant la touche Ci! enfoncée, sélecionnez les deux boutons d'options du cadre. Dans la barre de menu, choisissez Format > Aigner > A gauche. Les contréles sont maintenant parfatement disposes sur le formulaire. TPS4 + Création d'une interface utilisateur Linterface semble correct. Vérifiezle en appuyant sur F5 : aspect est effectivement satisaisant, mais ciquer sur 7} svimporte lequel controle ne donne aucun résullt: il faut doter les conirOles de procédures gérant leurs événe- ‘ments. Cliquez sur la croix rouge située en haut @ droite pour revenir a Ifditeur Visual Basic sade totes cate En principe, il faudrait écrire ces procédures. Heureusement, nous les avons déja rédigées dans les TP précédents 8 | etelies sont deja presentes dans le module 1 (apres parfois de legeres modifications). I suffra donc dy faire appel depuis les procédures événementielles des contréles. Double-diquez sur le premier bouton de commande, Importer. Une nouvelle procédure Sub binimporter apparait dans la fenetre Code. Saisissez simplement entre les deux instructions Sub... End Sub Finstruction Import_List : Cest un appel a la routine existante. Attention : en état actuel, la procédure Inport_List ne fonctionne pas pour vous. Vous devez ajuster le chemin daccés selon Yemnplacement réel de stockage du fichier a importer sur votre configuration, ce qui est signalé par un commentaire dans la procédure. Le cas échéant, repertez-vous & votre clesseur T?_30.xlsm pour copier-coller le bon chemin daccés. amor a= Double-cliquez sur le bouton de commande Mise en forme. Saisisse entre les deux instructions Sub. End Sub 9 | Finstruction MiseEnForme : 12 aussi, un appel 8 une routine existante. Avant de mettre en forme le tableau im- port, il faut fe trier selon option retenue dans le cadre Tri et les deux boutons dioption. Juste en dessous de Finstruction Sub cndFormat (), sasissez Finstruction If Me.optCA.Value = True Then TriCA Else TriRegion. Sie bouton option Ti par chites daffaires est coché, i est effectué un tri par chifres affaires. Sinon, cest un tri par région et chitfes catfaires. Double-liquez sur le bouton de commande Quitter: Seisisez entre les deux instructions Sub... Chd Sub Finstruc- 10) tion Untoad frac. Cette instruction supprime de la mémoire le formulaire utlisateur, ne laissant que le dasseur act afiché (et Editeur Visual Basic, si vous aviez travailé a partir de celui-c) 113 7 z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} = =} fea fod 4 a > e ey wv to) c uv —¢ = Travaux pratiques avec Excel 2007 et 2010 ~ Fonctions avancées Testez maintenant le formuleire. Enregistrez le casseur,fermez IEditeur Visual Basic pour revenir& Excel. Dans le 11) formulaire, diquez une seule fois successivement sur les boutons Importer alate, puis Mise en forme : a liste est importée et mise en forme aprés un tri par chifes dafaires. Cocher la case Tr par région et cifres affaires, puis liquez & nouveau sur Mise en forme : le tableau est tné par region et chiires affaires et est mis en forme de adequate. Cliquez sur Quiter: le formulaire dispar, ne laissant que le classeur Excel visible (ou FEdteur Visual Basi interface utisateur fonctionne @ la perfection et pourtant, elle présente certains défauts.Affchez IEditeur Visual 12) Basic, ciquez sur F5 pour exécuter le formulaire, puis clquez sur Importer la iste : une nouvelle liste appara & gauche du tableau existant, décalant celui. = > ray zx oa 7 m 4 < o Pad i 7) = > re J > a] a mn ° Zz P= a] a] = Ss = 2 = aa) a [aa aed ae a = [From ion cit tatoes [a ‘aespin Ouest son fe Dupont st feraque sud Faugeras st summed 0 \aviton sod rs ‘Moyen centre 2 Parpatou Sud [a vobess centre Pour y remédier, il faut (et suffit) de vider la feuille de calcul avant toute importation de liste, Ouvrez la procédure 13} cmdimport_Cick et ajoutez au debut ce qui suit FeUITT Rows" 216") Select Selection.0elete Shift:=xllp 3 Prsvace Sub cmatepore_cisce®) Feusli. nove (eisia?) -setece a Sciectina,deheve shite!=ni0p 8 Eaport tier 8 114 TPS4 + Création d'une interface utilisateur Enregisrez le classeur, placez-vous sur le formulaire, appuyez sur FS puis appuyer a plusieurs reprises sur Importer 14} a tsie : Fimportaion Se déroule désormais parfatement. De la méme facon, i est possible c'appliquer un ti et Lune mise en forme avant c'avoir import la iste. Cela rest pas plus acceptable, Ouvrez la procédure crmdFormat et ajoutez au début ce qui suit If feuiT1.range("82").value ~ "then HsgBox ("Vous devez d'abord importer 1a liste 1") exit sud else ‘Ajoutez ensuite une instruction End If au-dessus de End Sub. La procédure ne pourra désormais sexécuter que sila cellule 82 contient une valeur Enregistrez le classeur, supprimez la liste actuelle puts testez le bouton Mise en forme : la procedure affche une boite de message signalant omission. Ilreste une demigre chose & mettre en place: Yaichage et le lancement automatique du formule lors du char- 15) gement du casseur. Dans FEditeur Visual Basic, dans la fenétre Code, sélectionnez dans la colonne de gauche Workbook et saisissez, comme corps de la procédure WrkBook_Open, instruction frit. Show. = ae Enregistrez le classeur, fermez léditeur, puis fermez le classeur TP_S4. Ouvrez-le @ nouveau et activez le conte- 16} ru: fe formulate safiche et vous permet c'importer et de mettre en forme la liste & votre guise. aia Tan coer a == (mean inesapaeeee epee & cea ae a amet Bs ae cm G08 SOs Eee On oe Te 1 serait possible d'améliorer encore cette interface et ses procédures. Par exemple, pour le moment, la taille de la liste est fixe: sile nombre de commerciaux ou de régions change, la mise en forme sera défectueuse. Comme le fichier doit toujours étre importé avant détre mis en forme, importation manuelle est superflue et pourrait seflectuer automatique- ‘ment dans la procédure du bouton Mise en forme, ce qui éiterait d‘aileurs d'avoir& vérifer si elle a bien été exécutée. La feuille de calcul pourrait étre datée automatiquement, et une possibilté dimpression automatique, avec er-téte et pied de page, proposée. Je laisse ces possibilités amelioration a votre sagacité. Si Besoin est, vous trouverez dans les exemples ln fichier TP_S4_fini qui devrait correspondre & ce que vous devriez avoir obtenu la fin de ce long TP. 115 7 z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} = =} fea fod 4 a > e ey wv to) c uv —¢ = PEC E REP ERAS Ewe eee) 1) Dunod, 116 i 5 | Astuces de programmation ’e livre va s'achever sur quelqu et ai ne relévent que de vous. stuces de programmation, qui rendront votre code plus lisible ur VBA est doté doptions bien utiles, les autres démarches Prévequis : TP 334 54 Fichier employé :néant “Temps de réalisation : 5 minutes LLorsqu'Excel enregistre une macro, il place avec pertinence des indentations la ol cela est nécessaire. Elles servent 1] genéralementaindiquer ce qui appartient a un méme ensemble (ou sous-ensemble) Cela contribue grandement 2 faciiter la lecture du code. Excel ne tient pas compte des indentations lorsquil exécute une procedure qui en content. Lorsque vous rédigez vous-méme le code d'une procédure, Cest a vous seul dinsérer les indentations adé- {quates. Uilisez la touche TAB pour ajouter une indentation a une ligne, et dela combinalson Maf+TAB pour supprimer tune indentation. De méme, servez-vous du caractere de saut de ligne (_) pour expliciter une procedure. Si fenregistreur de macros insére automatiquement quelques commentaires, affchés en vert, cest a vous de 2 | commenter votre propre code. Les instructions faciltent la compréhension du code tant pour vous-méme que pour les autres. Ils sont également ignorés pendant exécution dune procedure Pour créer un commentaire, dans la fenéire Code, placez une apostrophe au début de la igne de texte, Lorsque le cur- seur quitte cette ligne, celle devient verte, Vous pouvez également placer des remarques en fin de ligne, ou a la fn de la procédure. 2012 Dunod. pyright Cor TP5S « Astuces de programmation ‘Condensez les instructions. Trés souvent, vous modifez les proprités d'un méme objet. Une fois celi-ci sélec- 3 | tonne, servez-vous de Vinsirucion With Select ion. End With pour économiser de la saisie et rendre le code plus dar Il est souvent possible de rassembler ainsi des instructions éparses. Enfin, demier point et sans doute le plus important: n’hésitez pas a abuser de lenregistreur de macros. Il est inutile de réinventer la roue. Trés souvent, si vous ne vous souvenez pas de la facon d'effectuer une action particulére, enregistrez celle-i dans une macro et serve2-vous du cade ainsi généré, Vous devrez souvent I'épurer en le débarrassant des instruc- tions superfiues, mais cela demeure un excellent moyen de vous familariser facilement avec Visual Basic et d'en découvrir les membres et propriété. Parfois, le seul examen du code généré procure la réponse a votre question. IV était impossible daborder ii plus en détail la programmation VBA : un livre entier de cette taile serait a peine suff sant. Pour plus d'informations, reportez-vous a la documentation e’Excel et de Visual Basic ou & des sources extérieures, ‘comme D. Maniez, Formation a VBA Office 2010, Dunod, 2011, 117 7 z = e 4 = =I a 4 4 [- 4 co} a YZ ay 4 -} = =} fea fod 4 a > e ey wv to) c uv —¢ = “pound zt0z @ ywBtuAdo3 Index A Accepter ou refuser les modifications, boite de dialogue 35 antécédents 46 boite de message 115 Bouton de commande, contréle ActiveX 111 Bouton d'option, controle ActiveX 111 c Cadre, contréle ActiveX 111 Caption, propriété 111 certificat numérique 47 dlasseur authentifier 47 créer dans Excel Web App 57 envoyer par messagerie électronique 49 exécuter une macro a fouverture 79 inspecter 36 marquer comme final 38 ouvrir dans Excel 56 ouvrir dans Excel depuis Skydrive 58 partager 28 partager dans Skydrive 63 protéger 39 stocker sur Skydrive 54 collection 65 commentaire Excel 31 VBA 116 connexion réseau vers Skydrive 60 D dépendants 46 E Editeur Visual Basic afficher 82 Boite a outils 110 fenétre Espions 103 fenétre Exécution 105 enregistrement arréter 70, 71 lancer 70 Espion express 103 Excel Web App créer un classeur 57 ouvir un classeur 56 exécution fenétre 105 pas 8 pas détaillé 98 point c'arrét. 102 feuille de calcul protéger 41 protéger une partie de 43 fichier texte, importer 79 fonction 66 intégrée, améliorer 106 parametres facultatifs 107 formules afficher les relations 45 antécédents 46 dépendants 46 G Gestionnaire de scénario 1, 17 H Historique des modifications, feuille 35 1 identifiant Windows Live 52 If Then Else, instruction 113, indentation 116 Inspecteur de document 37 interface utilisateur, créer 110 macro absolue 73 éditer 81 119 emplacement de stockage 76 enregistrer 69 exécuter & fouverture d'un dasseur 79 propriétés, modifier 74 membre 66 méthode 65 modifications des utilisateurs 33, 34 accepter ou refuser 35 module 83 importer et exporter 108 supprimer ou ajouter 85 mot de passe 39 MsgBox, instruction 115 N Name, propriété 111 ° onglet Développeur, afficher 68 P Parameétres du solveur, boite de dialogue 5 partage de classeur 28 protéger 29, 30 as a pas détaillé 98 point d’arrét 102 procedure 66 programmation commentaire 116 indentation 116 propriété 66 protéger classeur 39 feuille de calcul 41 partie de feuille de calcul 43 120 scénario gestionnaire de 17 Solveur 11 Show, méthode 115 signature numérique 48 Skydrive connexion réseau vers 60 ouvrir un classeur dans Excel 58 partager un classeur 63 partager un dossier 62 stocker un dasseur 54 Solveur 1 algorithmes de résolution 15 Cellules variables 5 employer. 5 installer 3 Modele de probleme 11 rapports 9 solutions intermédiaires, afficher 7 sous-routine 66 T table de données 2, 22 u Unload, instruction 113, UserForm 110 Utilitaire d'analyse 2 Moyenne mobile 25 Statistiques descriptives 25 v Valeur cible 2, 20

You might also like