Académique Documents
Professionnel Documents
Culture Documents
Cliquez sur laxe puis appuyez sur le bouton droit de la souris pour afcher le
menu contextuel. Dans ce menu , slectionnez loption Format de laxe..
Figure 1.11
4
Lorsque la formule est termine, appuyez sur Entre. La formule est calcule,
son rsultat safche dans la cellule et, lorsque celle-ci est reslectionne, la
formule apparat dans la barre de formule.
2.4. Oprateurs reconnus par Excel
Les oprateurs spcient le type de calcul que vous voulez effectuer sur les lments
dune formule. Excel propose quatre types doprateurs de calcul diffrents :
1
Les oprateurs de rfrence : ils combinent les plages de cellules pour effectuer
des calculs.
HACHIMI Cours 20082009
2 Rfrences et formules 14
Type Oprateurs Signication Exemples
+ et Addition et soustraction 1 + 1 et 3 1
Arithmtique et / Multiplication et division 4 5 et 3/2
^ et % Exposant et Pourcentage 5^3 et 20 %
= et <> Egal et Diffrent de A1=B1 et A1<>B1
Comparaison < et > Infrieur et Suprieur A1<B1 et A1>B1
<= Infrieur ou gal A1<=B1
>= Suprieur ou gal A1>=B1
: Plage de cellules A1:C3
Rfrence ; Union de rfrences Max(B2:B5;C1:D3)
Espace vide Intersection de rfrences Max(B5:B15 A7:D7)
3. Rfrences
An de pouvoir manipuler des donnes provenant de diffrentes cellules dans des
calculs, il est ncessaire de pouvoir y faire rfrence. Une rfrence permet de
dsigner au sein dune formule les cellules contenant les donnes prendre en
compte dans le calcul.
Il existe plusieurs faons de faire rfrence une cellule : rfrence relative,
rfrence absolue, rfrence mixte
3.1. Rfrences relatives
La rfrence relative dune cellule est lexpression de sa position par rapport une
autre cellule. Ainsi, une rfrence relative donne le dcalage (en terme de nombre
de lignes et de colonnes) entre la cellule (dite de rfrence) et une cellule pointe
(dite cellule rfrence).
Dans sa conguration par dfaut, Excel utilise des rfrences relatives, vues
depuis la cellule de rfrence.
Exemple : Crons un petit tableau reprenant les valeur futures pour quelques
capitaux placs pendant une anne un taux annuel de 2 %.
Figure 2.19
HACHIMI Cours 20082009
2 Rfrences et formules 15
Pour connatre le montant disponible la n de lanne, nous devons rentrer la
formule suivante = capital + intrt dans la colonne C.
Commenons par calculer la valeur future pour le capital de 1 000, 00 dh. Nous
devons rentrer alors la formule =A3+B3 dans la cellule C3.
En tirant cette formule vers le bas, nous constatons que la formule a t modie
par Excel, pour nous donner la valeur future pour chaque capital plac. Par exemple
la cellule C5 contient actuellement la formule =A5+B5
Figure 2.20
Excel a donc adapt notre formule, pour la rendre conforme ce que nous attendions
intuitivement, savoir copier la formule de la ligne 3 vers les lignes 4 6 pour
obtenir la valeur future.
Si Excel a adapt cette formule, ce nest pas par hasard. Il a accompli ce que nous
lui avons demand, ni plus, ni moins. En ralit, lorsque vous crivez la formule
=A3+B3 dans la cellule C3, vous ne demandez pas Excel de calculer la somme
des cellules A3 et B3. Notre vraie demande Excel est de prendre la valeur stocke
deux cellules gauche de C3 et de ladditionner avec valeur stocke une cellule
gauche de C3.
Note : Avec Excel, il faut constamment garder lesprit que ce qui est nest pas
toujours ce que lon voit! Cest vrai pour des formules, mais aussi pour des
formats de cellules qui afchent parfois autre chose que la valeur de la cellule
utilise par Excel.
3.2. Rfrences absolues
La rfrence absolue reprsente le moyen de dsigner une cellule de faon unique
dans une feuille de calcul.
Vous serez frquemment confront des situations exigeant le recours des
rfrences absolues.
Exemple : Pour illustrer lutilisation dune rfrence absolue, reprenons tableau
ci-dessus contenant les valeur futures pour quelques capitaux placs pendant une
anne un taux annuel de 2 %.
HACHIMI Cours 20082009
2 Rfrences et formules 16
Figure 2.21
Dans la cellulle B8, entrez 2 %. Pour connatre lintrt produit par le capital de
1 000, 00 dh, nous devons rentrer la formule = capital*taux dintrt dans la cellule
B3, soit =A3* B8. Le rsultat nous donne effectivement 20, 00 dh
Pour les autres capitaux, nous allons recopier la formule vers le bas.
Figure 2.22
Le rsultat est faux, tout simplement parce que Excel a adapt la formule de calcul
dintrt vers le bas. Par exemple, la formule en B4 est devenue =A4* B9. La
formule reprend bien le deuxime capital, mais le taux dintrt est maintenant
repris en B9, soit 0 puisque B9 est vide. Pour obtenir un rsultat correct, il fallait
conserver la rfrence B8 inchange par une rfrence absolue.
On peut crer une rfrence absolue en plaant le signe $ avant les lments de la
rfrence qui ne doivent pas tre modis. Crez une rfrence absolue la cellule
B8 en ajoutant les signes $ sa rfrence. La formule en B3 devient =A3* $B$8.
Validez la formule et copiez-la vers le bas. On obtient le rsultat suivant :
Figure 2.23
HACHIMI Cours 20082009
2 Rfrences et formules 17
3.3. Rfrences mixtes
On appelle rfrence mixte, une rfrence dans laquelle la position horizontale de la
cellule est exprime de manire absolue et la position verticale de faon relative, ou
inversement.
Exemple : Calculons les intrts produits par quelques capitaux placs pendant
une anne un taux annuel de t % pour t = 2, 3, 4.
Figure 2.24
Dans la cellule B3 tapez la formule =$A3* B$8. Pour les autres intrts, nous allons
recopier la formule vers la droite sur C3 et D3. Relchez le bouton de la souris, les
cellules B3, C3 et D3 restent slectionnes.
Figure 2.25
Maintenant, pointez la poigne de copie. Ensuite, enfoncez le bouton de la souris et
tirez vers le bas de faon couvrir tout lespace jusqu la cellule D6.
Figure 2.26
Relchez le bouton de la souris. Excel a calcul le contenu de ces cellules. On obtient
le rsultat suivant :
HACHIMI Cours 20082009
2 Rfrences et formules 18
Figure 2.27
Note : Mettez le signe "$" devant la rfrence qui ne peut pas changer, cest--dire
devant la ligne pour la copie vers le bas, devant la colonne pour la copie
droite.
La touche F4
Lorsque lon saisit une rfrence dans une cellule dans une formule, le raccourci F4
permet de boucler sur les rfrences utilisables dune cellule ou dune plage. Par
exemple, si le point dinsertion est positionn aprs la rfrence A1 et si que lon
presse sur F4, on obtiendra $A$1, puis A$1, puis $A1, puis on reviendra sur A1
pour boucler.
3.4. Rfrence nomme
Il est possible de donner un nom une cellule ou un groupe de cellule. Ce type de
rfrence est en fait une rfrence absolue. Mais au lieu de dsigner la cellule par
son nom gnrique $A$1, on lui donne un nom particulier (souvent en rapport avec
son contenu).
Dnir un nom
Pour nommer une cellule ou une plage de cellules sous Excel il suft de slectionner
la zone que vous voulez nommer puis ouvrez le menu Insertion et activez
successivement les commandes Nom et Dnir. . . La bote de dialogue suivante
apparat :
Figure 2.28
HACHIMI Cours 20082009
2 Rfrences et formules 19
Dans la zone Noms dans le classeur, tapez le nom que vous voulez donner votre
plage de cellules ou acceptez le nom propos par Excel.
Note : La plage de cellules que vous voulez nommer tant slectionne, vous
pouvez aussi cliquez dans la zone Nom de la barre de formule et tapez le
nom souhait puis validez par la touche Entre.
Insrer un nom dans une formule
Lorsquune cellule ou une plage de cellule possde un nom, il est possible dy faire
rfrence via le nom. Ce qui est particulirement utile lorsque certaines cellules ou
plages de cellules contiennent des donnes caractristiques, car il est possible dy
faire rfrence via le nom mme si la cellule ou le groupe de cellules a t dplac.
Exemple : Dans une facture, il est judicieux de donner un nom comme total_ht
la cellule donnant le total hors taxe des articles. Vous pouvez galement crer une
cellule nomme TVA contenant lindice de la TVA.
Figure 2.29
4 Tapez le nom total_ht dans la cellule C8
4 Tapez le nom TVA dans la cellule C9
4 Tapez le nom Montant_TVA dans la cellule C10
Ainsi lorsque vous dciderez de calculer le Montant TVA et le Montant TTC, il
sufra de tapez la formule :
4 =total_ht * TVA dans la cellule C10
4 =total_ht +Montant_TVA dans la cellule C11
HACHIMI Cours 20082009
2 Rfrences et formules 20
Figure 2.30
HACHIMI Cours 20082009
3
Fonctions
1. Introduction
Les fonctions standard dExcel peuvent tre classes en dix catgories :
Fonctions nancires ;
Fonctions de date et dheure ;
Fonctions mathmatiques et trigonomtriques ;
Fonctions statistiques ;
Fonctions de recherches et de rfrences ;
Fonctions de bases de donnes ;
Fonctions de texte ;
Fonctions logiques ;
Fonctions dinformations ;
Fonctions personnalises.
Pour les fonctions, soit vous connaissez sa syntaxe et son nom, soit, et cest
prfrable quand on nest pas sr de soi, vous utilisez lassistant fonction (icne
2. Fonctions nancires
Ce paragraphe reprend une partie des fonctions nancires : emprunts, taux
dintrt, amortissement. Sans les voir toutes, intressons-nous aux principales.
Avant dattaquer la cration dune fonction nancire sous Excel, une petite
introduction sur les arguments (les paramtres des fonctions). Les arguments des
fonctions sont souvent notes comme suit :
taux le taux dintrt par priode de temps ;
va valeur actuelle (initiale) du caputal. Si va est omis, la valeur prise en compte
par dfaut est 0 et vous devez inclure largument vpm ;
npm le nombre total de priodes pour un paiement par priode ;
HACHIMI Cours 20082009
3 Fonctions 22
vpm le paiement par priode. Cette valeur est constante pendant toute la dure de
lopration ;
vc valeur future. Si vc est omis, la valeur par dfaut est 0 (par exemple, elle est
gale 0 sur un prt).
type valeur prenant 0 ou 1. type vaut 0 si les paiements sont effectus en n de
priode, et 1 si les paiements sont effectus en dbut de priode. Si type est
omis, la valeur par dfaut est 0.
2.1. Fonction VA
Cette fonction calcule la valeur actuelle dun investissement, cest--dire la
valeur correspondant la somme que reprsente aujourdhui un ensemble de
remboursements futurs. Par exemple, lorsque vous souscrivez un emprunt, son
montant reprsente la valeur actuelle pour le prteur.
La syntaxe de la fonction VA() se prsente comme suit :
VA(taux;npm;vpm;vc;type)
Exemple :
2.2. Fonction VC
Cette fonction renvoie la valeur future dun investissement remboursements
priodiques et constants et un taux dintrt constant. VC provient de valeur
capitalise.
La syntaxe de la fonction VC() se prsente comme suit :
VC(taux;npm;vpm;va;type)
taux : le taux dintrt par priode de temps ;
npm: le nombre total de priodes pour un paiement par priode ;
vpm: le paiement par priode. Cette valeur est constante pendant toute la dure de
lopration ;
va : valeur actuelle (initiale) du caputal. Si va est omis, la valeur prise en compte
par dfaut est 0 et vous devez inclure largument vpm ;
type : valeur prenant 0 ou 1. type vaut 0 si les paiements sont effectus en n de
priode, et 1 si les paiements sont effectus en dbut de priode. Si type est
omis, la valeur par dfaut est 0.
Exemple : Calculons au bout de 3 ans, la valeur acquise par un capital de 10 000 dh
plac intrts composs au taux annuels de 7 %.
2.3. Fonction VPM
Cette fonction calcule le remboursement priodique dinvestissement (ou dun
emprunt) sur la base de remboursements et dun taux dintrt constants.
La syntaxe de la fonction VPM() se prsente comme suit :
VPM(taux;npm;vpm;va;type)
HACHIMI Cours 20082009
3 Fonctions 23
Exemple :
2.4. Fonction NPM
Cette fonction renvoie le nombre de versements ncessaires pour rembourser un
emprunt taux dintrt constant, ces versements tant constants et priodiques.
La syntaxe de la fonction NPM() se prsente comme suit :
NPM(taux;vpm;va;vc;type)
Exemple :
2.5. Fonction INTPER
Cette fonction renvoie , pour une priode donne, le montant des intrts dus pour
un emprunt rembours par des versements priodiques constants avec un taux
dintrt constant.
La syntaxe de la fonction INTPER() se prsente comme suit :
INTPER(taux;pr;npm;va;vc;type)
Exemple :
HACHIMI Cours 20082009
4
Valeur cible et Solveur
1. Introduction
Les outils "Valeur cible" et "Solveur", intgrs Microsoft Excel, permettent
deffectuer des simulations. Il est trs simple de procder la rsolution dune
quation quelconque dans une feuille de calcul puisque loutil valeur cible a t
prprogramm dans ce but.
Loutil solveur possde les mmes fonctionnalits de base que loutil valeur
cible mais il est beaucoup plus performant. En effet, le Solveur peut grer des
problmes qui mettent en jeu de nombreuses variables, et peut vous aider trouver
les combinaisons de variables qui maximisent ou minimisent une cellule cible. Il
vous autorise aussi spcier une ou plusieurs contraintes (conditions qui doivent
tre remplies pour que la solution soit valide).
Il faut cependant modliser pralablement le problme sur une feuille de calcul.
La modlisation du problme dans un classeur Excel est la partie la plus ardue ; si le
problme est bien pos, lutilisation du solveur est trs simple. Consacrer le temps
ncessaire une analyse approfondie du problme avant de commencer travailler.
2. Valeur cible
Habituellement, on cre une formule contenant une variable et lon veut connatre
le rsultat de cette formule lorsque la variable contient une valeur que lon se xe.
Le principe de la valeur cible consiste raisonner lenvers : on cre une formule,
puis on indique le rsultat souhait. Excel calcule alors quelle doit tre la valeur de
lune des donnes utilises par le calcul pour que ce rsultat soit atteint.
Pour illustrer lutilisation de cette technique, considrons lexemple suivant :
Exemple : Vous envisagez placer 5 000 dh dans une banque. Vous dsirze savoir
de combien vous disposez dans 10 ans si la banque vous propose un taux dintrt
de 8 %. La formule de calcul est la fonction VC().
Saisissez les donnes et la formule de calcul :
HACHIMI Cours 20082009
4 Valeur cible et Solveur 25
Figure 4.31
4 : Dans la plage de cellules A3:C3, entrez les valeurs 5000, 10 et 8% ;
4 : Dans la cellule D3, entrez la formule =VC(C3;B3;;A3).
Le rsultat de lopration apparat dans la cellule D3, soit 10794, 62 dh.
Maintenant, supposons que vous disposez 5 000 dh et vous voulez obtenir une
valeur nale de 12 000 dh au bout de 10 ans. Calculez le taux dintrt qui devrait
vous tre servi pour atteindre ce but au bout des 10 ans.
La cellule variable est donc celle qui contient le taux dintrt. Voici la procdure
suivre pour dterminer la valeur cherche :
4 : Slectionnez la cellule contenant la formule, ici D3. Dans le menu Outils,
slectionnez la commande Valeur cible. . . La bote de dialogue suivante
apparat
Figure 4.32
: La rfrence de la cellule slectionne sinscrit automatiquement dans la zone
Cellule dnir.
4 : Dans la zone Valeur atteindre, tapez 12000 ;
4 : Dans la zone Cellule modier, slectionnez C3.
4 : Cliquez sur OK ou tapez ta touche Entre pour valider la saisie
: Excel afche la progression de la recherche dans une nouvelle bote de dialogue
Figure 4.33
HACHIMI Cours 20082009
4 Valeur cible et Solveur 26
La cellule C3 montre que la banque devrait vous proposer un taux dintrt de
9, 15% pour parvenir aux 12 000 dh souhaits aprs 10 ans.
Note :: Si la cellule afche 9 %, slectionnez le format 0, 00 % pour cette cellule.
Pour cela, cliquez deux fois sur licne .
3. Solveur
Le solveur dExcel est un outil puissance doptimisation et dallocation de
ressources. Il peut vous aider dterminer comment utiliser au mieux des
ressources limites pour optimiser lobjectif souhait (maximisation de prot,
minimisation de cot de production). En rsum, il permet de trouver le minimum,
le maximum ou la valeur au plus prs dune donne tout en respectant les
contraintes quon lui soumet. Plutt que de vous contenter dapproximations, vous
pouvez faire appel au solveur pour trouver la meilleur solution.
3.1. Installer Le Solveur
Le solveur est un outil additionnel dExcel. Il nest pas install par dfaut. Il faut
donc vrier quil est install avant de pouvoir lutiliser.
1
Dans la grille, cliquez sur le bouton Nouvelle, pour insrer une nouvelle che.
HACHIMI Cours 20082009
5 Listes de Donnes 34
2
Tapez vos donnes dans les zones de saisie de la grille. Appuyez sur Tab pour
passer la zone suivante ou sur Maj+Tab pour passer la zone prcdente, ou
cliquez dans la zone de votre choix.
3
Appuyez sur la touche Entre pour ajouter la che la n de la liste. Les zones
de la grille sont effaces, le compteur de ches est incrment. La grille est prte
recevoir une nouvelle che.
4
Quand vous avez termin la saisie de toutes les ches, cliquez sur le bouton
Fermer pour fermer la grille.
2.2. Rechercher une che avec la grille
Lutilit principale dune base de donnes est la rapidit daccs ses informations.
Les boutons Suivante et Prcdente permettent, comme les ches de la barre de
dlement, de feuilleter les ches une une.
Si vous recherchez une information prcise, vous utilisez les critres qui
permettent dliminer toutes les ches sans intrt dans cette recherche :
1
Cliquez sur le bouton Critres. Une grille vide est afche. Tapez les critres
cherchs dans leurs champs respectifs.
2
Cliquez sur le bouton Suivante ou Prcdente pour afcher les autres ches
correspondant aux critres.
3
Pour modier la che, tapez les nouvelles valeurs dans les champs. Pour effacer
dnitivement la che, cliquez sur le bouton Supprimer
3
Dans la premire zone Trier par slectionnez la colonne prioritaire dans le tri de
la liste. Choisissez entre le tri dans lordre croissant ou dcroissant.
Si des entres identiques apparaissent dans la colonne prioritaire, vous pouvez
demander le tri de ces donnes selon un critre appartenant une deuxime
colonne. Slectionnez la dans la deuxime zone Puis par.
4
Cliquez sur le bouton Option. . . Vous voyez apparatre une bote de dialogue
Option de tri.
4
Dans la premire zone Trier par slectionnez la ligne sur laquelle le tri sera
effectu. Choisissez entre le tri dans lordre croissant ou dcroissant.
Si des entres identiques apparaissent dans la ligne prioritaire, vous pouvez
demander le tri de ces donnes selon un critre appartenant une deuxime
ligne. Slectionnez la dans la deuxime zone Puis par.
6
Slectionnez dans la liste qui sest ouverte les entres que vous dsirez afcher.
HACHIMI Cours 20082009
5 Listes de Donnes 38
Exemple :
Nous dsirons
Nous obtenons le rsultat suivant :
4.2. Filtre automatique personnalis
Toutes les manipulations dcrites jusquici faisaient appel des critres clairement
dnis. Avec les ltres automatiques personnaliss vous pouvez dnir des critres
incorporant des oprateurs de comparaison et comparer ainsi des plages de valeurs.
Vous pourrez ainsi afcher toutes les ches comportant un salaire infrieur ou gal
5000 dh. Pour cela :
1
Plages : Slectionnez avec la souris la liste de donnes, soit ici la plage A1:F11
(gnralement correctement initialis si on a cliqu sur une cellule de la liste
avant de dmarrer lassistant).
3
Zone de critres : Slectionnez la plage des critres, soit ici la plage A14:C15
HACHIMI Cours 20082009
5 Listes de Donnes 43
4
Zone de critres : Slectionnez la plage des critres, soit ici la plage A14:C15
4
Copie dans : Ici, il suft dindiquer la rfrence dune cellule qui correspondra
au coin suprieur gauche du tableau rsultat qui sera extrait. La ligne avec
le nom des champs sera ajoute automatiquement comme premire ligne du
rsultat.
4
Trier la liste par ordre croissant ou dcroissant selon le champ dont vous devez
calculer les sous-totaux.
2
Cliquez sur OK, puis cliquez sur le bouton Terminer. Vous obtenez le tableau
prsent dans la gure ??
HACHIMI Cours 20082009
6 Tableaux croiss dynamiques 50
Figure 6.49
Vous pouvez crer un TCD sans avoir recours la fonctionnalit Disposition.
Choissisez Nouvelle feuille dans la troisime tape de lassistant, puis cliquez sur
le bouton Terminer. Excel va crer une nouvelle feuille de calcul avec la "coquille"
dun tableau crois dynamique. Le dbut de la feuille dmontre les quatre zones du
tableau : page, ligne, colonne et donnes.
Figure 6.50
Assistant
TCD
(tape 3)
Si vous insrez les mois dans la zone Colonne, Produit dans la zone Ligne, Units
vendues dans la zone Donnees et Agence dans la zone Page. Alors vous obtenez
le tableau prsent dans la gure ??
3. Modier un tableau crois dynamique
Le principal intrt des tableaux croiss dynamiques est la souplesse de leur
conguration, qui permet dorganiser les donnes de plusieurs faons trs
simplement, tout en tant assur de leur mise jour. Il est possible deffectuer
plusieurs types de modication.
HACHIMI Cours 20082009
6 Tableaux croiss dynamiques 51
3.1. Modier le contenu du TCD
Pour modier le contenu dun tableau crois dynamique, on peut procder de deux
faons. Voici la premire faon :
1
Insrez, si besoin est, un champ dans la zone Page. Dans nous exemple, nous
avons dj insr le champ Agence.
2
Cliquez sur OK
Figure 6.55
HACHIMI Cours 20082009
6 Tableaux croiss dynamiques 54
La gure 1.11 prsente le rsultat obtenu.
Figure 6.56
5. La fonction de synthse
Les donnes sont rsumes par Excel dans le tableau crois dynamique comme suit :
les valeurs numriques utilisent la fonction Somme et les valeurs de texte la fonction
Nb. Vous pouvez cependant modier la fonction de synthse (fonction de synthse
: type de calcul regroupant des donnes sources dans un tableau crois dynamique.
Somme, Nbval et Moyenne sont des exemples de fonctions de synthse). Au besoin,
vous pouvez galement crer un calcul personnalis.
6. Modier la fonction de synthse
La fonction de synthse par dfaut est la somme des donnes chiffres. Mais, vous
pouvez modier cette fonction. En effet, laide de la bote de dialogue Champ
Pivot Table vous accdez dautres fonctions.
Exemple : Ralisons un tableau crois dynamique qui prsente le Max de
chiffre daffaires ralis par produit et par mois. Nous referons au tableau crois
dynamique de la gure 1.??
1
Faites un double clic sur ltiquette du champ de donnes que vous dsirez
modier. La bote Champ Pivot Table safche.
Figure 6.57
2
Cliquez sur une fonction dans la zone Synthse par pour choisir la nouvelle
fonction de synthse. Pour notre exemple, slectionnez Max.
HACHIMI Cours 20082009
6 Tableaux croiss dynamiques 55
4 Cliquez sur le bouton Nombre. . . si vous voulez mettre en forme les valeurs du
champ de donnes.
4 Cliquez sur le bouton Options >> si vous voulez crer un calcul personnalis
pour le champ de donnes.
v Validez en cliquant sur OK.
Figure 6.58
Exemple : Considrons le tableau crois dynamique suivant qui prsente les
chiffres daffaires raliss par les trois agences :
Figure 6.59
Nous allons changer la prsentation des valeurs du champ des donnes. Par
exemple, nous allons prsenter le pourcentage des chiffres daffaires raliss par
les trois agences. Pour cela :
1
Cliquez sur le bouton Options >>. Dans la liste droulante Afcher les
donnes, slectionnez % du total.
4
Ouvrez le menu Outils et pointez sur la commande Macro, puis cliquez sur
Nouvelle macro. . .
ou bien cliquez sur le bouton Enregistrer une macro de la barre doutils Visual
Basic
Figure 7.66
Pour afcher la barre Visual Basic, cliquez sur le menu Afchage et pointez sur
Barre doutils, puis cliquez sur Visual Basic
4 La bote de dialogue Enregistrer une macro apparat :
Figure 7.67
Quatre options sont disponibles :
Le nom de la macro : remplacer le nom par dfaut "Macro1" par un nom plus
explicite.
Le nom de la macro ne doit pas contenir despaces. Vous pouvez les supprimer
ou les remplacez par des caractres autoriss (le tiret bas par exemple).
La touche de raccourci : cette option est facultatif. Elle permet de dmarrer la
macro par une combinaison de touche.
Nutilisez pas de raccourcis existants comme CTRL+G (gras), CTRL+I
(italique),. . . .
Enregistrer la macro dans : Slectionnez Ce classeur (llment par dfaut).
Le classeur personnel vous permet de mettre la macro disposition de tous vos
classeurs.
Description : par dfaut, il est indiqu la date de lenregistrement de la macro
ainsi que son auteur ; il est conseill dy mettre un commentaire plus clair et
plus appropri pour pouvoir sy retrouver facilement dans toutes ses macros !
2
Dans la bote de dialogue Enregistrer une macro (voir gure ??), tapez le nom
de la macro Ma_premiere_macro
Affecter ventuellement une touche de raccourci, par exemple L, puis cliquez
sur OK
A La boite de dialogue Arrter lenregistrement safche et tout ce que vous allez
faire maintenant est enregistr.
3
Excuter les actions que vous dsirez voire excuter plus tard par cette macro.
Pour notre exemple, nous allons cliquer sur les boutons suivant :
Figure 7.69
5
Dans le menu Outils, pointez sur Macro, puis cliquez sur la commande
Macro. . . . La bote de dialogue Macro safche, slectionnez votre macro dans
la liste et cliquez sur le bouton Excuter.
2
Cliquez sur le bouton ou le dessin de la feuille de calcul auquel vous avez affect
la macro (voir section ??).
4
Cliquez sur le bouton de la barre doutils auquel vous avez affect la macro (voir
section ??).
5
Cliquez sur la commande du menu laquelle vous avez affect la macro (voir
section ??).
Exemple : Pour executer la macro que nous avons crer et nommer
Ma_premiere_macro, vous avez deux possiblilits :
Utilisez le raccourci clavier Ctrl+L.
Ouvrez le menu Outils, pointez sur Macro, puis cliquez sur la commande
Macro. . . . Dans la fentre Macro, slectionnez Ma_premiere_macro et cliquez
sur Excuter.
2.3. Aecter une macro un objet graphique
Excel vous permet dassocier des boutons ou des objets graphiques aux macros
personnalises. Associer une macro un bouton ou un dessin est facile.
Aecter une macro un dessin :
1
Dessinez un objet graphique dans la feuille de calcul. Par exemple, placez une
image dans la feuille de calcul.
2
Cliquez sur lobjet graphique avez le bouton droit de la souris, puis cliquez sur
la commande Affecter une macro.
Figure 7.70
La bote de dialogue Affecter une macro safche.
HACHIMI Cours 20082009
7 Macros 64
Figure 7.71
2
Quand vous relchez le bouton de la souris, le bouton est dessin puis la bote
de dialogue Affecter une macro souvre.
3
Ouvrez le menu Afchage et pointez sur Barres doutils, puis cliquez sur
Personnaliser. . .
ou bien cliquez avec le bouton droit sur une barre doutils et slectionnez la
commande Personnaliser. . .
HACHIMI Cours 20082009
7 Macros 65
4 La bote de dialogue Personalisation safche
Figure 7.73
1
Avec le bouton droit de la souris, cliquez sur ce bouton (voir gure ??), et
choisissez la commande Affecter une commande. . .
Figure 7.74
La bote de dialogue Affecter une macro souvre.
3
Dans la zone nomde la macro slectionnez la macro souhait et validez par OK.
Excel vous offre la possibilit de choisir diffrentes images, et mme un diteur
de bouton an de crer des boutons personnaliss. La bote de dialogue
Personalisation tant afch, procdez comme suit :
HACHIMI Cours 20082009
7 Macros 66
1
Cliquez avec le bouton droit sur le bouton, pour afcher le menu contextuel.
2
Cliquez sur longlet barres doutils puis cliquez sur le bouton Nouvelle. . . La
bote de dialogue Nouvelle barre doutils souvre.
Figure 7.76
2
Remplacez le nom par dfaut par un nom plus explicite et cliquez sur OK.
2.5. Cration de menus
Excel permet de crer des menus ou sous menus personnaliss et de les positionner
o on veut dans la barre des menus.
Ajouter un menu la barre des menus :
1
Placez-vous sur le nouveau menu, puis cliquez avec le bouton droit de la souris
an dobtenir le menu contextuel.
6
Positionnez-vous sur le nouveau menu, puis cliquez avec le bouton droit pour
obtenir le menu contextuel.
5
Cliquez sur la commande Affecter une macro. Dans la bote de dialogue qui
safche slectionnez la macro qui vous intresse puis cliquez sur le bouton OK.
3. Modier une macro
Pour le moment, le texte de la macro vous semblera probablement
incomprhensible ! Vous pouvez nanmoins visualiser le code de la macro et
apprendre petit petit comment programmer en observant le code gnr par
lenregistreur de macros! En attendant, sachez que mme les programmeurs
chevronns saident de lenregistreur de macros qui permet dviter de saisir des
lignes de code ; une fois la macro enregistr, il est toujours possible de la complter
et de la modier. Pour visualiser la macro, deux solutions :
soit, dans le menu Outils, pointez sur Macro, puis cliquez sur la commande
Macros ; slectionnez la macro modier et cliquez sur le bouton Modier.
soit appuyez sur le raccourci clavier Alt+F11 pour accder directement au VBE
(Visual Basic Editor).
Vous entrez alors sous lditeur Visual Basic, un environnement indpendant
dExcel.
HACHIMI Cours 20082009
7 Macros 69
Figure 7.81
Vous pouvez visionner le code gnr par lenregistreur de macros, saisir, copier,
dplacer, insrer ou dtruire des instructions Visual Basic et des commentaires tout
comme laide dun traitement de textes.
Exemple : Ci-dessous, on le code de notre macro "Ma_premiere_macro" comme il
a t crer par lenregistreur de macros. Vous pouvez le simplier
Sub Ma_premire_macro()
Ma_premire_macro Macro
Macro enregistre le 12/12/2008 par Hachimi
With Selection.Font
.Name = "Arial"
.Size = 14
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Selection.Font.Bold = True
Selection.Font.Italic = True
Selection.Font.ColorIndex = 3
With Selection.Interior
.ColorIndex = 4
HACHIMI Cours 20082009
7 Macros 70
.Pattern = xlSolid
End With
End Sub
En gnral, lenregistreur de macros insre plus de code que ncessaire ; il est donc
conseill de supprimer les parties du code inutiles : en fait Excel indique toutes
les proprits du format, mais en ralit, on peut ne conserver que celles qui sont
rellement modies (taille, gras, italique, color).
Sub Ma_premire_macro()
Ma_premire_macro Macro
Macro enregistre le 12/12/2008 par Hachimi
With Selection.Font
.Name = "Arial"
.Size = 14
End With
Selection.Font.Bold = True
Selection.Font.Italic = True
Selection.Font.ColorIndex = 3
With Selection.Interior
.ColorIndex = 4
End With
End Sub
Vous pouvez galement insrer du code lintrieur de cette procdure. Par
exemple, insrez le code suivant avant la n de la procdure :
...
MsgBox "Le format des cellules " & Selection.Address
& vbCr & " t modifi"
End Sub
Pour tester votre les modications que vous avez apport au code, cliquez sur
licne ou utilisez la touche F5. Le message suivant safche :
Figure 7.82
4. Lditeur de macros
Lditeur de macro, ou VBE (Visual Basic Editor) est lenvironnement de
programmation de VBA. Pour lancer VBE, deux solutions :
HACHIMI Cours 20082009
7 Macros 71
soit, dans le menu Outils, pointez sur Macro, puis cliquez sur la commande
Macros. . . ; slectionnez la macro modier et cliquez sur le bouton Modier.
soit, appuyez sur le raccourci clavier Alt+F11 pour accder directement au VBE
(Visual Basic Editor).
Figure 7.83
Les principales fentres de VBE sont :
Fentre VBAProject : Elle prsente les diffrents projets ouverts et permet de
naviguer facilement entre vos diffrentes feuilles de codes VBA.
Fentre Code : Cest lendroit ou vous allez saisir votre code VBA.
Fentre Proprits : Proprits de lobjet slectionn.
Fentre Excution : Elle permet de tester une partie du code. Elle peut savrer
trs utile pour voir comment sexcutent certaines lignes de code.
Il est fort probable que laspect de votre diteur de macros soit diffrent. Il est
en effet personnalisable car chaque fentre peut tre masque puis rafche par
le menu Afchage. Cependant, cette conguration vous permettre de dbuter de
faon confortable lcriture de vos premires macros.
4.1. Congurer lditeur de macros
Il est important de bien congurer lditeur de macros. En effet, VBE peut vous
aider dans lcriture de votre code et le mettre en forme de faon ce quil soit plus
facile lire.
Sous VBE, ouvrez le menu Outils puis slectionnez la commande Options. . . La
bote de dialogue Options safche.
HACHIMI Cours 20082009
7 Macros 72
Onglet Editeur :
Figure 7.84
Vrication automatique de la syntaxe : Vrication automatiquement de la
syntaxe lors de la saisie d une ligne de code.
Figure 7.85
Dclarations de variables obligatoires : Sous Visual Basic, la dclaration de
variables nest pas obligatoire. Cependant, il est conseill de cocher cette option.
Si la case est coche, linstruction "Option Explicit" est ajoute dans les dclarations
gnrales de tout nouveau module.
Complment automatique des instructions : Cette option permet VBE de vous
aider dans la saisie de votre code :
Figure 7.86
Vous comprendrez trs vite son utilit lorsque vous saisirez vos premires lignes de
codes.
Info express automatique : Encore une option trs utile. Elle afche les diffrents
arguments que possde la fonction que vous venez de taper :
Figure 7.87
HACHIMI Cours 20082009
7 Macros 73
Info-bulles automatique : Indispensable lors dun dboguage pas pas. Elle
permet lafchage de vos variables.
Retrait automatique : Permet VBE de placer chaque ligne de code au mme
niveau que la ligne prcdente. Le retrait de lignes se fait par les touches Tab et
Shift+Tab. Cette option est ncessaire pour une bonne lecture du code VBA.
Paramtres de la fentre : Les trois options sont intressantes. Ldition de
texte par glisser-dplacer permet de dplacer laide de la souris le bloc de code
slectionn, lafchage du module complet par dfaut permet lafchage de toutes
les procdures dun mme module et la sparation des procdures oblige VBE
crer des traits entre chaque procdures.
Onglet Format de lditeur :
Figure 7.88
Cet onglet permet de changer la police et son format pour les diffrentes parties du
code inscrit dans vos modules. Il nest pas conseill de changer les paramtres par
dfaut.
Ces options vous permettent de congurer votre convenance lditeur de
macros. Si vous dbutez, il est conseill cependant de garder les options par dfaut.
HACHIMI Cours 20082009
8
VBA
1. Introduction
Visual Basic Application (VBA) est un langage de programmation orient objets .
Cela signie que chaque lment de lenvironnement Excel est considr comme un
objet. Lobjet le plus haut dans la hirarchie est lapplication elle mme.
La syntaxe de la plupart des instructions commence par faire rfrence un objet,
suivi dune action affectant cet objet. Par exemple, Objet.Action.
Les diffrents comportements, ou le jeu dactions connus dun objet sont appels
les Mthodes de lobjet. Ces objets disposent par ailleurs de proprits (
couleur, taille etc..). Pour modier une proprit, il faut faire suivre le nom de la
proprit du signe = et dune valeur. Par exemple, Objet.proprit = valeur.
VBA est le langage de programmation commun toutes les application de la
suite MicroSoft Ofce 2003 (Word, Excel, PowerPoint,. . . )
2. Les modules
3. Les variables
4. Les procdures
5. Les structures de dcisions
6. Les structures de boucles
7. Les oprateurs
8. Les botes de dialogue
9. Les objets dExcel
HACHIMI Cours 20082009
9
Les UserForms
1. Introduction
Les UserForms (galement appels formulaires personnalises) sont des boites
de dialogues personnalises, offrant une interface intuitive entre lapplication
et lutilisateur. Ils permettent de raliser des interfaces utilisateur simples et
conviviales pour la saisie, la modication ou la visualisations des donnes.
2. Crer un UserForm
Pour insrer un UserForm dans votre projet, ouvrez lditeur de macros (Alt+F11)
et activer la commande Userformdu menu Insertion. Un objet UserFormapparat :
Figure 9.89
Par dfaut, les UserForms sont nomms "UserForm1", "UserForm2" . . .
Chaque UserForm possde ses propres proprits tel que son nom, ses couleurs,
sa taille, sa position . . .
Les proprits dun UserForm safchent en cliquant sur licne ou sur la
commande Fentre Proprits du menu Afchage ou par la touche F4.
HACHIMI Cours 20082009
9 Les UserForms 76
Figure 9.90
Les proprits permettent de personnaliser les UserForm. Vous pouvez changer la
couleur de fond par la proprit "BackColor", ajouter une bordure par la proprit
"BorderStyle", dnir sa couleur par la proprit "BorderColor", mettre une image
de fond par la proprit "Picture" . . .
Le dimensionnement dun UserForm peut se faire avec la souris ou en
dnissant sa taille par ses proprits "Width" (Largeur) et "Height" (Hauteur).
Chaque UserForm va recevoir des contrles. En cliquant sur le UserForm, une
boite outils doit apparatre. Si ce nest pas le cas, afchez la en cliquant sur licne
ou par la commande Bote outils du menu Afchage.
Figure 9.91
Pour ajouter un contrle sur le UserForm, vous pouvez soit cliquer sur le contrle
dsir puis, sur le UserForm, tracer un rectangle qui dnira sa taille ou simplement
faire un cliquer-glisser du contrle sur lUserForm.
Les UserForm possdent une grille matrialise par des points. Elle permet
lalignement des contrles. Vous pouvez la masquer, la dsactiver ou dnir sa
taille par le menu "Outils-Options" dans longlet "Gnral".
Le menu Format de VBE permet daligner les contrles. Par exemple la
commande Droite du sous menu Aligner du menu Format permet un alignement
rgulier des contrles :
HACHIMI Cours 20082009
9 Les UserForms 77
Figure 9.92
3. Acher un UserForm
Lafchage des UserForm seffectue par la mthode Show de lUserForm. Cette
instruction doit tre place lintrieur dune procdure dans un module.
Exemple : crivez une procdure (une macro) qui permet dafcher un UserForm
nomm UserForm1. Pour cela :
+ Dans lditeur de macros, activez la commande Module du menu Insertion . Un
module de code Module1 souvre.
+ Saisissez la procdure suivante dans le module de code :
Sub AfficherUF1()
UserForm1.Show
End Sub
+ Excuter cette macro.
Par dfaut, un UserForm est modal, cest--dire que lutilisateur ne peut effectuer
aucune action sur lapplication tant quil nest pas ferm. Depuis la version 2000
dExcel, il est possible dafcher des boites non modal, permettant lutilisation des
feuilles de calcul en gardant le UserForm afche. La syntaxe est :
Sub AfficherUF1()
UserForm1.Show 0
End Sub
ou bien
Sub AfficherUF1()
UserForm1.Show False
End Sub
Linstruction Load permet de charger un objet UserForm en mmoire sans
lafcher.
4. Fermer ou masquer un UserForm
Linstruction Unload permet de fermer un objet UserForm et de leffacer de la
mmoire, les valeurs de ses contrles sont alors perdues. La syntaxe de cette
instruction est :
Unload UserForm
HACHIMI Cours 20082009
9 Les UserForms 78
La mthode Hide de lobjet UserForm permet de faire disparatre un objet UserForm
de lcran sans le supprimer de la mmoire. La syntaxe devient :
UserForm.Hide
Linstruction Unload ou la mthode Hide sont gnralement places dans
les procdures vnementielles attaches aux boutons de validation de lobjet
UserForm, comme par exemple les boutons de commande OK et Annuler.
5. Associer du code a un Userform
Les contrles placs sur un objet UserForm et lobjet UserForm lui mme sont
rceptifs aux vnements utilisateurs qui les affectent (clic souris sur un bouton de
commande, saisie dune valeur dans une zone de texte. . . ). On peut ainsi crer
des procdures dites procdures vnementielles, qui se dclencheront lorsque
lvnement correspondant sera repr.
La syntaxe dune procdure vnementielle attache un contrle de nom
NomContrle (proprit Name) et dclenche par un vnement NomEvnement
est la suivante :
Private Sub NomContrle_NomEvnement()
...
End Sub
Dans le cas dune procdure vnementielle attache un objet UserForm, le
nom de lobjet UserForm (proprit Name) napparat pas dans les instructions de
dclaration de la procdure. Il est remplac par le mot cl UserForm comme suit :
Private Sub UserForm_Nomvnement()
...
End Sub
Les vnements sont nombreux et varient dun contrle lautre. En voici, quelques
uns :
+ vnement Change : dtect lors de la modication de la valeur (proprit Value)
dun contrle (par exemple une zone de texte).
+ vnement Click : dtect lorsque lutilisateur clique sur un contrle (par exemple
un bouton de commande).
+ vnement dblClick : dtect lorsque lutilisateur double-clique sur un contrle.
6. Exemple de UserForm
Considrons la feuille de calcul suivante qui contient la liste des employs :
HACHIMI Cours 20082009
9 Les UserForms 79
Figure 9.93
Dans cette exemple, nous allons voir comment raliser un UserForm nomm "Saisie
des Employs" destin saisir ou modier les ches employs.
Nous voulons que le UserForm "Saisie des Employs" permet :
de modier les informations dun employ et de mette jour la feuille de calcul
qui contient la liste des employs ;
de crer la che dun nouveau employ et de lajouter dans la feuille de calcul
qui contient la liste des employs.
Nous voulons que le UserForm "Saisie des Employs" doit avoir laspect suivant :
Figure 9.94
6.1. Cration du UserForm
Sous VBE, le UserForm est cr en procdant comme suit :
+ Ouvrez le menu Insertion puis cliquez sur la commande UserForm pour
insrer un UserForm
+ Modier le nomde lobjet UserFormpar dfaut, UserForm1, en SaisieEmployes
dans la proprit (Name) de la fentre Proprits. Ce nom est le nom qui sera
utilis dans le code pour faire rfrence lobjet UserForm.
HACHIMI Cours 20082009
9 Les UserForms 80
+ La proprit Caption de lobjet UserForm correspond au libell qui apparat
dans sa barre de titre. Modier cette proprit en Saisie des Employs.
+ Ajoutez les contrles ncessaires comme dans la gure ci-dessus.
Pour placer un contrle dans lobjet UserForm, cliquer sur lobjet voulu de la
Bote outils et le faire glisser vers lobjet UserForm. Ds quun contrle a t
plac sur lobjet UserForm, dnir son nom grce la proprit (Name).
Type de contrle Nom
Zone de liste ListeEmployes
Bouton de commande CommandNouveau
Zone de texte TextNom
Zone de texte TextPrenom
Zone de texte TextDateNaissance
Zone de texte TextDateEmbauche
Zone de texte TextSalaire
Bouton option OptionADM
Bouton option OptionCOM
Bouton option OptionTEC
Bouton option OptionFIN
Bouton de commande CommandValider
Bouton de commande CommandFermer
6.2. Achage du UserForm "SaisieEmployes"
Linstruction Load permet de charger un objet UserForm en mmoire sans lafcher.
La mthode Show de lobjet UserForm permet dafcher un objet UserForm et de le
charger en mmoire, si cela na pas dj t fait.
crivons la procdure qui permet dafcher la bote de dialogue de saisie dun
employ.
+ Dans VBE, activer la commande Module du menu Insertion. Un module de code
Modulen souvre. Renommer le ModuleSaisieEmploye laide de la proprit
Name.
+ Saisir la procdure suivante dans le module de code :
Sub AfficherUserFormEmployes()
SaisieEmployes.Show
End Sub
+ Excuter cette macro. Pour cela, nous avons lier cette macro un bouton dans la
feuille de calcul
pour fermer la bote de dialogue Saisie des Employs, cliquer sur son bouton
de fermeture).
HACHIMI Cours 20082009
9 Les UserForms 81
Figure 9.95
7. Ajout de procdures vnementielles
Afchez UserForm "SaisieEmployes" et cliquez sur ses boutons. Vous constatez
que les trois boutons ne produisent aucune action. En effet, pour quune action
se dclenche, il faut quune procdure vnementielle soit dnie pour lvnement
Clic.
Chaque UserForm possde son propre module. Pour y accder, cliquez sur le
UserForm ou sur un contrle puis tapez F7 ou fates un double-clic sur lobjet. Par
dfaut, le module safchera avec une procdure vnementielle de type prive de
lobjet slectionn.
Nous allons commencer par double clic sur le bouton Fermer de notre UserForm.
Lditeur des macros active la fentre de code pour lUserForm et fornit une
procdure vide :
Figure 9.96
Ajoutez le code qui permet de fermer et dcharger lUserForm lintrieur de cette
procdure. On obtient :
Private Sub CommandFermer_Click()
Unload SaisieEmployes
End Sub
HACHIMI Cours 20082009