You are on page 1of 16

INITIATION VISUAL BASIC

sous EXCEL
B. Thon
Toutes les applications Microsoft (Word, Excel, Powerpoint, etc) comportent deux
fonctionnalits:
!ne interface utilisateur permettant de crer, de modifier des documents (textes,
feuille de calcul, prsentation)
!n lan"a"e de pro"rammation (#isual Basic pour $pplication, #B$) permettant
d%crire des pro"rammes (routines) pour effecteur des oprations non pr&ues par
le lo"iciel, et correspondant ' des (esoins particuliers de l%utilisateur. )e lan"a"e a
une structure et une s*ntaxe commune ' toutes les applications, mais certaines
instructions sont spcifi+ues ' cha+ue application.
$&ec Excel ,-, la pro"rammation en #B se fait ' partir du menu . /utils 0, sous menu
. Macros 0, sous menu . #isual Basic editor 0
$&ec Excel 122- : menu . 3&eloppeur 0, puis . #isual (asic 0
!ne fen4tre appara5t, dans la+uelle on peut crire des . macros 0 ou des . sous routines 0
(6!B 7/!T89E6) +ui pourront 4tre ensuite excutes.
Principe : une . macro 0 comporte une suite d%instructions +ui &ont s%excuter les unes apr:s
les autres
;a premi:re li"ne indi+ue le nom de la macro et (&entuellement) les &aria(les +u%elle doit
traiter
;a derni:re li"ne est tou<ours : E93 6!B
B. Thon -Initiation visual basic page =
Exemple :
SUB Essai()
Suite dinstructions
>commentaires &entuels
END SUB
;ors+ue &ous taper une apostrophe > le texte +ui suit n%est pas considr comme une
instruction excuta(le, mais comme un commentaire. )ela permet de prciser certaines
informations utiles au pro"rammeur
;ors+ue &ous +uitte? le module de pro"rammation, cette macro sera incluse dans la liste des
macros, et &ous pourre? en demander l%excution. )ette macro sera lie au classeur en cours,
mais son excution pourra concerner des donnes contenues dans d%autres classeurs.
/(<ectifs :
;ire des donnes dans une feuille
Traitement de ces donnes
Placer les rsultats dans une feuille
$&anta"e : pas (esoin de "rer l%interface utilisateur (saisie et prsentation des informations)
;es donnes sont dans des cellules (Cells) d%une feuille (Sheet) d%un classeur (Workook)
;%adressa"e d%une cellule doit donc comporter tous ces lments spars par un point (.)
Exemple :
X ! "o#classeur$"a%euille$cells(&'()
: met le contenu de la cellule de la li"ne = et de la colonne 1 de la feuille Mafeuille du classeur
Mon)lasseur dans la &aria(le @
!ne cellule est rfrence par son numro de li"ne et son numro de colonne dans la feuille
8l faut dclarer (ou . dimensionner 0) toutes les &aria(les +ui &ont 4tre utilises, par
l%instruction DI" sui&i du 9om de la &aria(le AS t*pe de &aria(le
ex :
Dim "a)euille As Worksheet
Plusieurs faAons d%associer la &aria(le Mafeuille ' une feuille de donnes d%un classeur :
Set "a)euille ! Acti*eWorkook$Acti*eSheet >la &aria(le MaBeuille fait rfrence ' la
feuille acti&e (celle +ui est affiche sur l%cran)
B. Thon -Initiation visual basic page 1
/u :
Set "a)euille ! Acti*eWorkook$Sheets(+)euil(+) >MaBeuille fait rfrence ' la
Beuille nomme . Beuil1 0 du classeur actif
/u :
Set "a%euille ! Acti*eWorkook$Sheets(&) >Mafeuille fait rfrence ' la feuille
numro = du classeur
"a)euille$Acti*ate
"a)euille$Select ,MaBeuille de&ient la feuille acti&e, et s%affiche ' l%cran
Ce peux maintenant utiliser cette &aria(le pour faire rfrence ' une cellule :
X ! "a)euille$cells(&'() >met le contenu de la cellule situe li"ne = et colonne 1 dans la
&aria(le nomme @ (+u%il faut aussi dclarer, &oir plus loin)
/u
"a)euille$cells(('-) ! . BON/OU0 1 >met la cha5ne de caract:re place entre "uillemets
dans la cellule li"ne 1, colonne D
/u :
"a)euille$cells(&'-) ! ma%euille$cells(&'&) 2 ma%euille$cells(&'() > : met dans la cellule de la
li"ne =, colonne D, le produit des &aleurs contenues dans les cellules des colonnes = et 1 de la
m4me li"ne
!ne cellule a un contenu (numri+ue ou alphanumri+ue) et des . proprits 0 (couleur, fonte,
taille de caract:res, etc) E la &aleur (&alue) d%une cellule fait partie de ses proprits
3onc, en toute ri"ueur il faudrait crire :
X ! "a)euille$cells(&'()$Value
"a)euille$cells(('-)$Value ! . BON/OU0 1
M4me si ce n%est pas tou<ours ncessaire
/n peut &entuellement dfinir certaines proprits de la cellule :
"a%euille$cells(('-)$ )o#t$Italic ! True >st*le itali+ue
"a%euille$cells(('-)$ )o#t$Italic ! )alse >supprime le st*le itali+ue
"a%euille$cells(('-)$ )o#t$ol3 ! True ,met en "ras
"a%euille$cells(('-)$ )o#t$Si4e ! (5 >taille du texte
"a%euille$cells(('-)$ I#terior$colorI#3e6 ! 7 >colore la cellule a&ec la couleur
correspondante ' l%index F
ou
"a%euille$cells(('-)$ I#terior$color ! *Blue >colore la cellule en (leu
7emar+ue : le prfixe &( (pour #isual Basic) se retrou&e sou&ent pour dfinir un caract:re
(&(ta(, &()7, etc) ou une couleur (&(7ed, &(BlacG, etc)
B. Thon -Initiation visual basic page D
T89es 3e *ariales
;es diffrents t*pes de &aria(les les plus utiliss :
BOOLEAN : ne peut prendre +ue 1 &aleurs : true (= ou =) ou %alse (2)
INTE:E0 : nom(re entier (entre D1-HI et D1-HI)
LON: : entier lon"
DOUBLE : nom(re dcimal ( : dou(le prcision)
ST0IN: : cha5ne de caract:res alphanumri+ues
!ne &aria(le a un nom (@, J, Taille, 9om), un t*pe et un contenu
8l faut dimensionner ( : dclarer) une &aria(le a&ant de l%utiliser, a&ec l%instruction 38M
)ette instruction rser&e un emplacement en mmoire pour la &aria(le dclare
/n peut ima"iner une &aria(le comme un . rcipient 0 +ui a un nom et un contenu
Exemple :
DI" X as 3oule' ; as 3oule
X ! &<
;a &aria(le @ de t*pe dcimal, contient la &aleur =2
;e @ fait rfrence au nom de la &aria(le (le rcipient)
; ! X2-$&
;a &aria(le J de t*pe dcimal contient D=
;e J fait rfrence au nom de la &aria(le (le rcipient)
;e @ fait rfrence au contenu du rcipient nomm @,
X ! X = &
;a &aria(le @ contient ==
8ci, le @ ' "auche du si"ne K fait rfrence au . rcipient 0 tandis +ue le @ ' droite fait
rfrence ' son contenu.
;e si"ne . K 0 est une instruction d%affectation (et non de comparaison, comme nous le
&errons plus tard)
)ette instruction se lit donc comme : . mettre dans le rcipient X son contenu plus 1 0
8l est &ident +u%on ne peut pas mettre dans une &aria(le des &aleurs d%un autre t*pe
Par exemple :
DI" X as I#te>er
X ! . ?ello 1
produit une erreur car on essaie de mettre une cha5ne de caract:res dans une &aria(le
de t*pe numri+ue
de m4me :
DI" "o#te6te as Stri#>
"o#te6te ! &<
Produit une erreur
8l faut donc faire attention lors+u%on &eut mettre le contenu d%une cellule dans une &aria(le.
Par exemple :
DI" X as Doule
X ! ma%euille$Cells(&'&)$*alue
Produira une erreur si la cellule contient du texte
B. Thon -Initiation visual basic page L
EXE0CICE &
3ans la feuille = du classeur actif, entrer les &aleurs sui&antes (ou d%autres si &ous le
souhaite?):
9ous allons calculer la mo*enne et la &ariance de la srie de &aleurs de la colonne . taille 0
Pour cela, il nous faut une macro +ui . lit 0 les &aleurs dans la feuille =, calcule la mo*enne,
la &ariance et l%cartt*pe, et crit les rsultats dans la feuille 1
9ous a&ons (esoin de dfinir des &aria(les correspondant ' :
;a feuille =
;a feuille 1
;a somme des @
;a somme des @
1
;a somme des carrs des carts
;e nom(re de &aleurs de la srie
;a mo*enne de la srie
;a &ariance de la srie
;%cartt*pe de la srie
7emar+ues :
;e nom d%une &aria(le doit commencer par une lettre, et ne doit ensuite contenir +ue des
lettres ou des chiffres (surtout pas d%espace, ni de lettre accentues comme , ', M)
;es lettres minuscules ou ma<uscules ne sont pas diffrencies
8l est conseill de donner des noms +ui &o+uent le contenu de la &aria(le (ex : Mo*), mais ce
n%est pas o(li"atoire. )ela facilite simplement la lecture du pro"ramme
B. Thon -Initiation visual basic page F
9otre pro"ramme, ' ce stade, se prsente ainsi :
8l nous faut maintenant dfinir les feuilles +ui &ont 4tre utilises
8l est sou&ent intressant de conna5tre le nom(re de li"nes et de colonnes utilises dans une
feuille pour ne parcourir +ue la pla"e de cellules rellement utilises
;a s*ntaxe est :
9(re;i"ne K feuille.!sed7an"e.7ows.)ount
9(re)ol K feuille.!sed7an"e.)olumns.)ount
dans notre exemple :
B. Thon -Initiation visual basic page H
8l nous faut maintenant calculer 9 (le nom(re de &aleurs) : c%est le nom(re de li"nes N = (la
premi:re contient du texte correspondant aux noms des &aria(les)
9 K derniere;i"ne =
8l nous faut maintenant parcourir la colonne 1 de la feuille Bdata oO se trou&ent les &aleurs
dont on &eut calculer la mo*enne, &ariance et cartt*pe
Pour effectuer ce t*pe d%opration, tous les lan"a"es utilisent des . (oucles 0 dans les+uelles
s%excutent des instructions rptes.
En #B, les (oucles les plus utilises sont les (oucles B/7 M 9E@T
Bor indice K valeurInitiale to valeurFinale
6uite d%instructions
9ext indice
Bonctionnement de la (oucle : lors+ue le pro"ramme rencontre la premi:re instruction Bor, il
met la &aleur da la &aria(le indice ' valeurInitiale puis il excute les instructions <us+u%' la
li"ne 9ext indice. 8l au"ment la &aleur de indice de = (par dfaut) et &rifie +ue cette nou&elle
&aleur n%est pas suprieure ' valeurFinale. 6i indice est infrieur ou "al ' valeurFinale, les
instructions sont excutes <us+u%' l%instruction 9ext indice. )e c*cle se rp:te <us+u%' ce +ue
indice soit suprieur ' valeurFinale. ;e pro"ramme sort alors de la (oucle et passe '
l%instruction +ui suit l%instruction 9ext indice.
9ous allons utiliser ce t*pe de (oucle pour parcourir les cellules de la feuille = +ui
contiennent les &aleurs +ui nous intressent et effectuer les calculs prala(les au calcul de la
mo*enne et de la &ariance.
Pour ces calculs, il nous faut la somme des @ (+ue nous mettrons dans la &aria(le 6om@) et la
somme des carrs de @ (+ue nous mettrons dans la &aria(le 6om@1)
8l nous faut aussi une nou&elle &aria(le +ui ser&ira d%indice pour parcourir la pla"e de cellules
#oici comment se prsente le pro"ramme
Puestion : comment calculer 6om@ et 6om@1 Q
B. Thon -Initiation visual basic page -
B. Thon -Initiation visual basic page I
;es ta(leaux de donnes
/n a sou&ent (esoin de ran"er des &aleurs dans un . ta(leau 0 comportant des li"nes et des
colonnes.
Ex :
DI" VarX(&<<'&<) as Doule
)ration d%un ta(leau (en mmoire) de =22 li"nes (ex : des su<ets) et =2 colonnes (ex :
des conditions de mesures ou des essais de prati+ue) pou&ant contenir des nom(res dcimaux
$utre exemple :
DI" NomSu@et(7<) as Stri#>
/prations sur les &aria(les numri+ues
A33itio# A =
Soustractio# A B
"ulti9licatio# A 2
Di*isio# A C
0aci#e carrDe A sEr(X)
Lo>arithme A Lo>(X)
E69osa#t A XF(
Gartie e#tiHre 3Iu# #omre A INT(X)
Si#us' cosi#us' ta#>e#te A si#(X) cos(X) Ta#(X)
/prations sur les &aria(les alphanumri+ues (cha5nes de caract:res)
Elles doi&ent 4tre dclares comme 6T789R
Ex :
DI" "ot as Stri#>
DI" Ghrase as Stri#>
/n peut les spcifier en mettant leur contenu entre "uillemets :
Ex :
"ot ! +Bo#@our+
Ghrase ! +Comme#t alle4 *ous J+
/n peut extraire des (outs de cha5nes de caract:re a&ec D fonctions :
Le%t' ri>ht' mi3
E6 A
"ot ! le%t(Ghrase' -) >Mot contient les D caract:res ' "auche de Phrase (+Com+)
"ot ! 0i>ht(9hrase'5) >Mot contient les L caract:re les plus ' droite de Phrase (+us J+)
"ot ! "i3(Ghrase'('7) >Mot contient les F caract:res ' partir du 1
:me
(SommenS)
/n peut recherche si une cha5ne se trou&e dans une autre :
B. Thon -Initiation visual basic page ,
Dim Trou*e as Lo#>
Trou*e ! I#str(9remCar'Chai#eCile' Chai#eCherchee)
)ette instruction recherche, en partant du caract:re 9remCar si Chai#eCherchee est
inclus dans Chai#eCile' et ren&oie la position (Trou*e) de sa premi:re occurence
E6 A
"ot ! +*ous+
Ghrase ! +Comme#t alle4 *ous J+
Trou*e ! I#str(&'Ghrase' "ot) >Trou&e sera "al ' =F
(note : si la recherche doit commencer au =
er
caract:re, le param:tre peut 4tre omis)
6i la cha5ne cherche ne se trou&e pas dans la cha5ne ci(le, la fonction ren&oie 2
Autres 9rocD3ures A
Ghrase ! UCASE(Ghrase) >met toute la cha5ne en M$C!6)!;E6 (!pper )ase)
Ghrase ! LCASE(Ghrase) >met toute la cha5ne en minuscules (;ower )ase)
Parcourir un ensem(le de donnes dans un ta(leau
6oit un ta(leau de donnes @(=22) dont on &eut calculer la mo*enne
!ne possi(ilit : calculer Somme ! X(&) = X(() = X(-) K$ = X(LL) = 6(&<<)
Et ensuite : "o8e##e ! SommeC&<<
Pas terri(leM., d%oO l%intr4t de faire une (oucle pour parcourir le ta(leau :
DI" i as i#te>er
DI" Somme as Doule' "o8e##e as Doule
Somme ! <
)or i ! & to &<<
Somme ! Somme = X(i)
Ne6t i
"o8e##e ! SommeC&<<
i : indice de la &aria(le dans le ta(leau
/n &erra plus loin d%autres t*pes de (oucle
;es procdures
Toutes les instructions doi&ent 4tre incluses dans des procdures (sauf 38M +ui est la seule '
pou&oir appara5tre en dehors d%une procdure)
Pour crer une procdure :
"e#u Outils
"acros
Visual Basic E3itor
!ne feuille s%affiche oO on &a crire les procdures
B. Thon -Initiation visual basic page =2
Bormat "nral :
SUB NomGrocD3ure(#omM*ariale AS t89eM*ariale'K)
Instructions
END SUB
6i la procdure ne comporte pas de param:tres, elle appara5tra dans le menu . macro 0. 6i elle
comporte des param:tres, elle ne pourra 4tre appele +ue depuis une autre procdure
Exemple de procdure pour calculer la mo*enne de 9 &aleurs :
Su Calcul"o8e##e (X() as 3oule' N as i#te>er' "o8e##e as Doule)
DI" i as i#te>er
DI" Somme as Doule
Somme ! <
)or i ! & to N
Somme ! Somme = X(i)
Ne6t i
"o8e##e ! SommeCN
E#3 Su
Exemple : les donnes sont dans la premi:re colonne d%une feuille de calcul . Beuil= 0
/n &eut pou&oir calculer leur mo*enne et leur cartt*pe et placer ces informations dans
. Beuil1 0
/n cre d%a(ord une procdure +ui pourra 4tre appele depuis le menu /utils.. Macros
Pour ce t*pe de procdure, il ne doit pas * a&oir de &aria(les ( : ar"uments) +ui lui sont passs
Su "o8e##e ()
Dim )euilDo##ees as Norksheet
Dim )euil0esultat as Norksheet
Dim Nre as i#te>er
Dim ;(&<<<) as Doule >on pr&oit lar"e
Dim "o8 as Doule' Ecart89e as Doule
Dim i as i#te>er
Set )euilDo##ees ! Acti*eWorkook$Sheets(+)euil&+)
Set )euil0esultat ! Acti*eWorkook$Sheets(+)euil(+)
Nre ! )euilDo##ees$Use30a#>e$0oNs$Cou#t
)or i ! & to Nre
;(i) ! )euilDo##ees$cells(i'&)
Ne6t i
>on appelle la procdure de calcul de la mo*enne d<' dfinie plus haut :
call Calcul"o8e##e(;()' Nre' "o8)
>on appelle la procdure de calcul de l%cart*pe +u%on &a crire plus loin
call calculEcart89e(;()' Nre' Ecart89e)
> on crit les rsultats
)euil0esultat$cells(&'&) ! ONomre 3e Do##DesAP
)euil0esultat$cells(&'() ! Nre
)euil0esultat$cells(('&) ! O"o8e##eA O
)euil0esultat$cells(('()! "o8
B. Thon -Initiation visual basic page ==
)euil0esultat$cells(-'&) ! OEcartBT89eA O
)euil0esultat$cells(-'() ! Ecart89e
E#3 su
SUB calculEcart89e(X() as 3oule' N as i#te>er' s as 3oule)
DI" @ as i#te>er
DI" Somme as 3oule
DI" Somme( as 3oule
)or @ ! & to N
Somme ! Somme = X(@)
Somme( ! Somme( = X(@)2X(@)
Ne6t i
S ! sEr((somme( Q (Somme2Somme)CN)C(NB&))
e#3 su
vous remarquerez que les variables nont pas le mme nom dans la procdure appelante
((!"#bre" $o%! et dans la procdure appele (X(!" #" $o%enne!
autres t*pes de (oucles :
(oucle While...Wend
i ! <
Nhile i R N
>ces instructions seront excutes tant +ue i T 9
i ! i = &
somme ! somme = i
Ne#3
(oucle 3o...;oop until
i!<
Do
i ! i = &
somme ! somme = X(i)
Loo9 U#til i ! N >+uand i K 9 on sort de la (oucle
Boucles im(ri+ues
Ex : une feuille contient les mesures d%une &aria(le faites sur plusieurs su<ets (en li"ne) dans
diffrentes conditions (en colonnes)
;a premi:re li"ne contient le nom des mesures
;a premi:re colonne contient le nom des su<ets
Su LireDo##ees()
Dim Nsu@ets as i#te>er' Nmesures as i#te>er
Dim X(&<<'7<) as 3oule
Dim Nomsu@ets(&<<) as stri#>' Nom"esures(7<) as Stri#>
Dim i as i#te>er' @ as i#te>er
Nsu@ets ! Acti*eSheet$Use30a#>e$0oNs$Cou#t B&
Nmesures ! Acti*eSheet$Use30a#>e$Colum#s$Cou#t B&
)or @ ! & to Nmesures
Nom"esures(@) ! cells(&'@=&)
> pas (esoin de prciser la feuille si c%est la feuille acti&e
B. Thon -Initiation visual basic page =1
Ne6t @
)or i ! & to Nsu@ets
Nomsu@ets(i) ! cells(i=&'&)
)or @ ! & to Nmesures
X(i'@) ! cells(i=&'@=&)
#e6t @
#e6t i
E#3 su
8nformations sur les classeurs (woG(ooG) et les feuilles (6heets)
>com(ien de feuilles dans un classeur Q
>mettre leurs nom dans les cellules d%une feuille
Dim W as Norkook >la &aria(le W( fera rfrence ' un classeur
Dim % As Worksheet >la &aria(le f fera rfrence ' une feuille
Dim N% as i#te>er' i as i#te>er >ces 1 &aria(les contiendront des nom(res entiers
Set W ! acti*eWorkook >W( fait maintenant rfrence au classeur actif
N% ! W$Sheets$Cou#t >9f contient maintenant le nom(re de feuilles de W(
Set % ! W$Acti*eSheet >f fait rfrence ' la feuille acti&e de W(
)or i ! & To N%
%$Cells(i' &) ! + %euille + S i >on place dans la colonne = de la li"ne i le
mot Beuille et le numro i +ui lui correspond
%$Cells(i' () ! W$Sheets(i)$Name >on place dans la colonne 1 de la li"ne i le
nom de la feuille correspondante
Ne6t i
>a<outer une feuille au classeur W(
W$Sheets$A33
3ialo"ue a&ec l%utilisateur
Do##er u#e i#%ormatio# T lIutilisateur A
Bonction "s>Bo6(messa>e)
Exemple A
"s>Bo6(. o9Dratio# termi#De 1)
!ne (oite de dialo"ue appara5t, et reste &isi(le <us+u%' +ue l%utilisateur cli+ue . oG 0
B. Thon -Initiation visual basic page =D
(on peut crer dautres forme de dialogue avec MsgBox : voir aide dans VisualBasic)
Dema#3er u#e i#%ormatio# T lIutilisateur A
Bonction I#9utBo6(messa>e' titre' 3D%aut)
Su Dema#3eNomre(Nre As I#te>er)
Dim "essa>e as stri#>' Titre as stri#>' De%aut as stri#>' 0e9o#se as stri#>
"essa>e ! +E#tre4 le #omre *oulu A+
Titre ! +DDmo#stratio# 3e I#9utBo6+ U 3finit le titre.
De%aut ! +&S U 3finition la &aleur par dfaut.
U $ffiche le messa"e, le titre et la &aleur par dfaut$
0e9o#se ! I#9utBo6("essa>e' Titre' De%aut)
>attente d%un clicG sur /V
Nre ! Val(0e9o#se)
E#3 su
B. Thon -Initiation visual basic page =L
instructions conditionnelles
)ertaines instructions ne doi&ent 4tre excutes +ue si une certaine condition est &raie
I) condition T?EN
Instructions excuter si la condition est vraie
Else
Instructions excuter si la condition est fausse (optionnel)
END I)
Exemple : calculer la mo*enne des &aleurs de la colonne = en i"norant les cellules &ides :
Su "o8e##eI>#oreVi3e()
Dim )euilDo##ees as Norksheet
Dim )euil0esultat as Norksheet
DI" i as i#te>er
Dim Nre as i#te>er' N as i#te>er' "o8 as 3oule' ecart89e as 3oule
Set )euilDo##ees ! Acti*eWorkook$Sheets(+)euil&+)
Set )euil0esultat ! Acti*eWorkook$Sheets(+)euil(+)
Nre ! )euilDo##ees$Use30a#>e$0oNs$Cou#t
N!<
)or i ! & to Nre
I% )euilDo##ees$cells(i'&) RV OP the#
,ou i% IsNumeric()euilDo##ees$Cells(i' &)) the#
>instructions excutes uni+uement si la condition est &raie
N!N=&
;(N) ! )euilDo##ees$cells(i'&)
E#3 i%
>' la sortie de la (oucle, 9 sera "al au nom(re de cellules non &ides
Ne6t i
call Calcul"o8e##e(;()' N' "o8)
call calculEcart89e(;()' N' Ecart89e)
> on crit les rsultats
)euil0esultat$cells(&'&) ! ONomre 3e Do##DesAP
)euil0esultat$cells(&'() ! N
)euil0esultat$cells(('&) ! O"o8e##eA O
)euil0esultat$cells(('()! "o8
)euil0esultat$cells(-'&) ! OEcartBT89eA O
)euil0esultat$cells(-'() ! Ecart89e
E#3 Su
9ote : TW si"nifie . diffrent 0 : not e+ual
9ote : lors+u%une &aria(le est dimensionne dans une procdure, elle n%existe +ue pour cette
procdure
Pour +u%une &aria(le soit . &isi(le 0 par toutes les procdures, il faut la dclarer
(dimensionner) en dehors d%une procdure, en t4te de la feuille #isual (asic
B. Thon -Initiation visual basic page =F
)oloria"e de cellules
Comme#t co##aWtre les i#3e6 3es couleurs
Su couleur()
Dim i As I#te>er
Dim "a)euille As Worksheet
Set "a)euille ! Acti*eWorkook$Sheets(+)euil&+)
)or i ! & To 7X
"a)euille$Cells(i' &) ! i
"a)euille$Cells(i' ()$I#terior$ColorI#3e6 ! i
Ne6t i
E#3 Su
B. Thon -Initiation visual basic page =H

You might also like