2. 2
Qu’est-ce qu’un programme ?
Présentation VBA / AC VIGIER
exprimées dans un langage spécifique
Ex : C++, Visual Basic, HTML, PHP…
C’est une suite de commandes
exécutables
3. 3
Programmation orientée objet
Présentation VBA / AC VIGIER
Ex : fenêtres, boîtes de dialogues,
contenu de cellules, feuilles de
classeur, logiciels…
Création de programmes manipulant
des objets informatiques
4. 4
Qu’est-ce qu’une macro ?
Présentation VBA / AC VIGIER
Rédiger et envoyer automatiquement des
e-mail à partir d’un fichier Excel
C’est un programme en langage VBA
qui permet d’exécuter des commandes
sur des objets du Pack Office
Ex 1
Ex 2 Actualiser automatiquement des
graphiques et les sauvegarder un par un
dans des fichiers PDF
5. 5
Quand faire une macro?
Présentation VBA / AC VIGIER
Pour des actions répétitives
Pour des actions longues
6. 6
Pourquoi apprendre VBA ?
Présentation VBA / AC VIGIER
Un domaine créatif et intéressant
Une plus-value indéniable en entreprise
Témoignage 1
Témoignage 2
Démonstrations
7. 7
Les règles d’or du programmeur
Présentation VBA / AC VIGIER
Savoir ce que l’on cherche à faire
Etre patient
Etre rigoureux
Apprendre à chercher l’information
Poser des questions
S’acharner
S’investir
8. 8
Comment écrit-on un programme ?
Présentation VBA / AC VIGIER
On écrit le scénario des actions à conduire
Exemple : Il faudra dupliquer telle feuille
tant de fois, puis reporter telle valeur,
puis appliquer telle condition…
On suit le scénario pour écrire le code
On procède au débogage
9. 9
Hiérarchie des objets dans Excel
Présentation VBA / AC VIGIER
Application
Workbooks
Worksheets (Worksheet)
Shapes (Shape)
Charts (Chart)
CommandBars (CommandBar)
Collection d’objets
Objets
Range
…
10. Présentation VBA / AC VIGIER 10
VBA Excel : collections d’objets
Collection de tous les classeurs ouverts,
numérotés par ordre d’ouverture.
Ex : Workbooks(1) désigne le classeur
qui a été ouvert en premier.
Workbooks
11. Présentation VBA / AC VIGIER 11
VBA Excel : collections d’objets
Collection de toutes les feuilles
ouvertes, numérotées par ordre de
rangement dans le classeur.
Ex : Worksheets(1) désigne le premier
onglet du classeur.
Worksheets, Sheets
12. Présentation VBA / AC VIGIER 12
VBA Excel : quelques objets (1)
Ex : Workbooks(″Demo1.xlsx″)
ThisWorkbook
ActiveWorkbook
Ex : Worksheets(″Bilan″)
Worksheets(1)
ActiveSheet
Classeur
Feuille
13. Présentation VBA / AC VIGIER 13
VBA Excel : quelques objets (2)
Ex : Columns(1)
Columns (″A:A″)
Ex : Rows(2)
Colonne
Ligne
14. Présentation VBA / AC VIGIER 14
VBA Excel : quelques objets (3)
Ex: Cells(″A4″)
Cells(3,1)
Ex :
Range(Cells(1,1), Cells(3,4))
Cellule
Plage de
cellules
15. Présentation VBA / AC VIGIER 15
Le langage
Agir sur les objets ou sur
les collections d’objets
Principe du code
Comment ?
On identifie l’objet concerné
On lui applique :
• soit une propriété
• soit une méthode
16. Présentation VBA / AC VIGIER 16
Propriétés d’un objet
Il s’agit d’appliquer à un objet certaines
caractéristiques
Objet : FeuilleEx 1 Propriétés :
Nom, couleur d’onglet…
Ex 2 Objet : Cellule Propriétés :
Valeur, taille du texte,
police, couleur…
17. Présentation VBA / AC VIGIER 17
Méthodes sur un objet
Il s’agit d’appliquer à un objet certaines
transformations
Objet : FeuilleEx 1 Méthodes :
Déplacer, créer, copier,
supprimer…
Ex 2 Objet : Cellule Méthodes :
Effacer le contenu,
copier, coller…
18. Présentation VBA / AC VIGIER 18
Le langage
Objet.Propriété
Objet.Méthode
La syntaxe de base
Exemple
Des objets peuvent être associés entre eux si la
hiérarchie est respectée
que signifie Sheets(«Feuil2»).Cells(5,2).Copy ?
19. Présentation VBA / AC VIGIER 19
L’éditeur Visual Basic
Eléments du projet :
Classeurs
Feuilles
Modules
Formulaires
Propriétés de l’élément
sélectionné
20. Présentation VBA / AC VIGIER 20
L’éditeur Visual Basic
Nous sommes dans le Module 1
Le code des procédures
contenues dans le Module 1
s’affiche
21. Présentation VBA / AC VIGIER 21
Exemple de code
Début et fin de la procédure
Commentaire
(toujours précédé du signe ’)
Liste des commandes à appliquer
22. 22
Derniers conseils avant de se lancer
Présentation VBA / AC VIGIER
Prenez des notes sur tout ce qui vous paraît
devoir servir souvent
Constituez-vous une bibliothèque de macros
que vous pourrez par la suite adapter à vos
besoins
Ne pensez pas que vous en êtes incapables ;
si vous avez pu apprendre à parler, vous
pouvez apprendre à programmer