Gestion de résultats sportifs en VBA sous Excel.

Transcription

Gestion de résultats sportifs en VBA sous Excel.
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Introduction
Introduction
Qu'est
Qu'estce
cequ'une
qu'unemacro
macro??
Présentation
Présentationdu
duprojet
projetààréaliser
réaliser
Saisie
Saisiedes
deséquipes
équipes
Enregistrement
Enregistrementdu
duclasseur
classeur
Le
Leformulaire
formulaireUserForm
UserForm
Déclaration
Déclarationde
devariables,
variables,l'instruction
l'instructionDIM
DIM
Range,
Range,IfIfThen
ThenElse
Else
La
Lapropriété
propriétéOffset
Offset
Boîte
Boîtede
dedialogue
dialogueMsgBox
MsgBox
Boutons
BoutonsEffacer
Effaceret
etFermer
Fermer
Mise
Miseen
enforme
formedu
duformulaire
formulaire
Copyright Christophe Malpart. Tous droits réservés
1
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Introduction
Ce
Cetutoriel
tutorielaapour
pourobjectif
objectifde
devous
vousmontrer
montrercomment
commentcréer
créerdes
desmacros
macrosààl'aide
l'aidedu
du
langage
VBA.
langage VBA.
Vous
Vousserez
serezguidé
guidépas
pasààpas
pasen
encréant
créantune
uneapplication
applicationpermettant
permettantde
degérer
gérerdes
des
résultats
sportifs.
résultats sportifs.
Dans
Dansce
cebut,
but,nous
nousaborderons
aborderonsles
lesprincipes
principesde
debase
basede
delalaprogrammation,
programmation,les
les
techniques
de
création
de
boîtes
de
dialogues
personnalisées.
techniques de création de boîtes de dialogues personnalisées.
La
Lafinalité
finalitéétant
étantde
deconstruire
construireune
uneapplication
applicationqui
quivous
vouspermettra
permettrade
devisualiser
visualiser
concrètement
l'utilité
d'un
traitement
de
données
par
le
biais
du
langage
concrètement l'utilité d'un traitement de données par le biais du langageVBA.
VBA.
Copyright Christophe Malpart. Tous droits réservés
2
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Qu'est ce qu'une macro ?
Une
Unemacro
macroest
estun
unensemble
ensemblede
delignes
lignesde
decodes
codesqui
quicontient
contientdes
desinstructions.
instructions.Ces
Ces
instructions
sont
par
la
suite
interprétées
par
le
tableur
Excel
pour
réaliser
des
instructions sont par la suite interprétées par le tableur Excel pour réaliser destâches.
tâches.
Le
Lelangage
langageutilisé
utilisépour
pourcoder
coderces
cesinstructions
instructionsest
estleleVBA
VBA(Visual
(VisualBasic
Basicfor
forApplication).
Application).
L'utilité
L'utilitéd'une
d'unemacro
macrocommande
commandeest
estd'automatiser
d'automatiserdes
destâches,
tâches,des
descalculs,
calculs,des
des
procédures.
Elle
apporte
un
gain
de
temps
non
négligeable
et
vous
évite
d'avoir
procédures. Elle apporte un gain de temps non négligeable et vous évite d'avoiràà
traiter
traiterdes
desfichiers
fichiersmanuellement.
manuellement.
Copyright Christophe Malpart. Tous droits réservés
3
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Présentation du projet à réaliser
Cette feuille de calcul permet
Cette feuille de calcul permet
de gérer un tournoi de Handball
de gérer un tournoi de Handball
à quatre équipes qui se joue en
à quatre équipes qui se joue en
deux tours.
deux tours.
Chaque équipe doit jouer 3
Chaque équipe doit jouer 3
matchs.
matchs.
Le classement se fait sur la
Le classement se fait sur la
base de point(s) totalisé(s).
base de point(s) totalisé(s).
Les boutons de macro vont
Les boutons de macro vont
déclencher des procédures
déclencher des procédures
d'automatisation des calculs et
d'automatisation des calculs et
classement.
classement.
Copyright Christophe Malpart. Tous droits réservés
4
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Présentation du projet à réaliser
Dans cette feuille figure le classement final. Les résultats des deux tours ont été exportés via une
Dans cette feuille figure le classement final. Les résultats des deux tours ont été exportés via une
macro. Le bouton de Classement final permet de classer les équipe définitivement au regard des
macro. Le bouton de Classement final permet de classer les équipe définitivement au regard des
résultats des 1er et 2ème tours.
résultats des 1er et 2ème tours.
Copyright Christophe Malpart. Tous droits réservés
5
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Présentation du projet à réaliser
Nous
réaliserons
Nous
réaliseronsun
unformulaire
formulairede
desaisie
saisiequi
quipermettra
permettrade
desaisir
saisirles
leséquipe
équipeààpositionner
positionner
er
au
1
ertour. Nous saisirons également les buts et la date de l'événement.
au 1 tour. Nous saisirons également les buts et la date de l'événement.
Nous
attribuera
Nousélaborerons
élaboreronspar
parlalasuite
suiteune
unemacro
macroqui
qui
attribuerales
lespoints
pointset
etclassera
classerales
leséquipes
équipes
er
en
fonctions
des
résultats
obtenues
sur
ce
1
ertour.
en fonctions des résultats obtenues sur ce 1 tour.
Une
Une2ème
2èmemacro
macropermettra
permettrade
depositionner
positionnerautomatiquement
automatiquementles
leséquipes
équipespour
pourles
les
matchs
du
2ème
tour.
matchs du 2ème tour.
ème
Les
Lesbuts
butsdes
desmatchs
matchsde
dece
ce22èmetour
tourseront
serontsaisies
saisiesmanuellement
manuellementpuis
puisune
unemacro
macro
attribuera
les
points
et
classera
automatiquement
ces
équipes.
attribuera les points et classera automatiquement ces équipes.
IlIlsera
seraquestion
questionensuite
ensuitede
decréer
créerune
unemacro
macroqui
quiexportera
exporterales
lesrésultats
résultatsdes
desdeux
deuxtours
tours
dans
un
tableau
situé
dans
une
autre
feuille.
dans un tableau situé dans une autre feuille.
Sur
Surcette
cetteautre
autrefeuille
feuilleune
unedernière
dernièremacro
macroclassera
classeraautomatiquement
automatiquementet
etdéfinitivement
définitivement
les
équipes
en
fonctions
des
points
obtenus.
les équipes en fonctions des points obtenus.
Copyright Christophe Malpart. Tous droits réservés
6
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Saisie des équipes
Ouvrez un nouveau classeur Excel
Ouvrez un nouveau classeur Excel
puis saisissez ces équipes (vous
puis saisissez ces équipes (vous
pouvez bien évidemment saisir
pouvez bien évidemment saisir
d'autres équipes).
d'autres équipes).
Renommez votre feuille
Renommez votre feuille
ListeEquipes.
ListeEquipes.
Copyright Christophe Malpart. Tous droits réservés
7
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Enregistrement du classeur
Enregistrez votre classeur en le nommant
Enregistrez votre classeur en le nommant
RésultatsMatchs.
RésultatsMatchs.
Attention à bien sélectionner l'option Classeur Excel
Attention à bien sélectionner l'option Classeur Excel
(prenant en charges les macros) dans la zone Type.
(prenant en charges les macros) dans la zone Type.
Copyright Christophe Malpart. Tous droits réservés
8
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Le formulaire UserForm
Nous allons utiliser un formulaire UserForm comme aide à la saisie. Dans une 2ème
feuille de ce même
Nous allons utiliser un formulaire UserForm comme aide à la saisie. Dans une 2ème feuille de ce même
classeur saisissez les données présentes dans le tableau ci-dessous et mettez en forme le tableau comme
classeur saisissez les données présentes dans le tableau ci-dessous et mettez en forme le tableau comme
indiqué ci-dessous.
indiqué ci-dessous.
Plus précisément, ce UserForm va sélectionner les équipes situées dans la feuille ListeEquipes puis les
Plus précisément, ce UserForm va sélectionner les équipes situées dans la feuille ListeEquipes puis les
affichera dans les cellules du tableau de la feuille SelectionEquipes.
affichera dans les cellules du tableau de la feuille SelectionEquipes.
La feuille est en mode Paysage.
La feuille est en mode Paysage.
Renommez votre feuille SelectionEquipes.
Renommez votre feuille SelectionEquipes.
Copyright Christophe Malpart. Tous droits réservés
9
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Le formulaire UserForm
Nous allons dans un 1erertemps activer l'onglet Développeur. En
Nous allons dans un 1 temps activer l'onglet Développeur. En
effet, cet onglet pas défaut est rarement activité dans la barre des
effet, cet onglet pas défaut est rarement activité dans la barre des
menus d'Excel.
menus d'Excel.
Cliquez dans le menu
Cliquez dans le menu
Fichier sur l'option
Fichier sur l'option
Options puis cliquez
Options puis cliquez
sur Personnaliser le
sur Personnaliser le
ruban.
ruban.
Une fois fait cochez
Une fois fait cochez
l'option Développeur.
l'option Développeur.
Copyright Christophe Malpart. Tous droits réservés
10
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Le formulaire UserForm
Cliquez sur l'onglet Développeur puis cliquez sur l'option Visual Basic du groupe Code.
Cliquez sur l'onglet Développeur puis cliquez sur l'option Visual Basic du groupe Code.
Cliquez dans le menu Insertion
Cliquez dans le menu Insertion
sur l'option UserForm.
sur l'option UserForm.
Copyright Christophe Malpart. Tous droits réservés
11
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Le formulaire UserForm
Vous devez obtenir ceci.
Vous devez obtenir ceci.
La fenêtre Boite à outils peut être déplacée sous votre UserForm.
La fenêtre Boite à outils peut être déplacée sous votre UserForm.
Copyright Christophe Malpart. Tous droits réservés
12
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Le formulaire UserForm
Vous pouvez élargir votre UserForm en cliquant sur la poignée située en bas à droite.
Vous pouvez élargir votre UserForm en cliquant sur la poignée située en bas à droite.
Renommez dans la zone Name votre formulaire SaisieInfos.
Renommez dans la zone Name votre formulaire SaisieInfos.
Copyright Christophe Malpart. Tous droits réservés
13
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Le formulaire UserForm
Dans la zone Caption
Dans la zone Caption
saisissez Saisie des
saisissez Saisie des
données des équipes.
données des équipes.
Cliquez sur l'option Zone de
Cliquez sur l'option Zone de
liste modifiable de la boite
liste modifiable de la boite
à outils.
à outils.
Copyright Christophe Malpart. Tous droits réservés
14
Gestion de résultats sportifs
en VBA sous Excel.
Tutoriel n°1
Le formulaire UserForm
Insérez vos zones de liste modifiable dans votre formulaire comme présenté ci-dessous.
Insérez vos zones de liste modifiable dans votre formulaire comme présenté ci-dessous.
Les étiquettes des zones de liste modifiable s'obtiennent en cliquant sur l'option Intitulé illustré
Les étiquettes des zones de liste modifiable s'obtiennent en cliquant sur l'option Intitulé illustré
par la lettre A dans la boîte à outils.
par la lettre A dans la boîte à outils.
Copyright Christophe Malpart. Tous droits réservés
15