D g zach.1231

25
Thierry TILLIER http://www.coursdinfo.fr FORMATION VBA EXCEL 2010 Livret 1 – L’IDE Visual Basic

description

cours analyse swot

Transcript of D g zach.1231

Page 1: D g zach.1231

Thierry TILLIER

http://www.coursdinfo.fr

FORMATION VBA EXCEL 2010

Livret 1 – L’IDE Visual Basic

Page 2: D g zach.1231

Ce support de cours est réservé à un usage

personnel. Toute utilisation et diffusion

dans le cadre d’une activité de formation

fait l’objet d’une licence de droit de copie.

Veuillez nous contacter si vous souhaitez

utiliser ce cours dans ce cadre.

Page 3: D g zach.1231

Table des matie res

Chapitre 1 Introduction ........................................................................................................................... 4

Chapitre 2 Généralités sur les macros ..................................................................................................... 5

Chapitre 3 Le ruban Développeur ........................................................................................................... 6

Chapitre 4 L’enregistreur (rappel) ........................................................................................................... 9

4.1 Enregistrer une macro ................................................................................................................... 9

4.2 Exécuter une macro..................................................................................................................... 15

Chapitre 5 Modifier une macro ............................................................................................................. 16

Chapitre 6 Ajouter un bouton de commande ....................................................................................... 20

6.1 Création du bouton ..................................................................................................................... 20

6.2 Ajouter un bouton dans la feuille ................................................................................................ 23

6.3 Ajouter un Ruban personnel ....................................................................................................... 25

Chapitre 7 Les plages nommées ............................................................................................................ 30

Chapitre 8 L’éditeur de code ................................................................................................................. 32

Chapitre 9 L’explorateur de projet ........................................................................................................ 33

Chapitre 10 La fenêtre des propriétés .................................................................................................. 34

Chapitre 11 L’explorateur d’objet ......................................................................................................... 35

Chapitre 12 D’autres fenêtres ............................................................................................................... 36

Chapitre 13 Afficher l’aide ..................................................................................................................... 37

Chapitre 14 Barre d’outils débogage ..................................................................................................... 38

Chapitre 15 Fenêtre d’exécution et debug ........................................................................................... 39

15.1 La fenêtre de code ..................................................................................................................... 39

15.2 Point d’arrêt (break point) ........................................................................................................ 39

15.3 Les bulles d’aide ........................................................................................................................ 40

15.4 Fenêtre espion ........................................................................................................................... 41

15.5 Variables locales ........................................................................................................................ 42

Chapitre 16 Exercices ............................................................................................................................ 43

Page 4: D g zach.1231

Copyright © 2011 Thierry TILLIER Tous droits réservés

Chapitre 1 Introduction Dans ce livret vous découvrirez l’éditeur de code VBA et apprendrez à créer des macros simples et

utiliser les fonctions de débogage.

Prérequis : Maîtriser Excel 2010 et ses fonctions de base, savoir faire des macros simples avec Excel

(livret 19 des cours Excel 2010). Avoir des notions d’anglais.

Objectifs :

Rappels sur l’enregistreur de macro

Se repérer dans l’interface de l’éditeur VBA

Afficher les fenêtres courantes (explorateurs et fenêtres de contrôles)

Insérer un point d’arrêt

Afficher et utiliser la fenêtre espion

Retrouvez tous les cours sur http://www.coursdinfo.fr

Page 5: D g zach.1231

Copyright © 2011 Thierry TILLIER Tous droits réservés

THIERRY TILLIER FORMATIONS

http://www.coursdinfo.fr

06 81 51 11 24

[email protected]

Page 6: D g zach.1231

Thierry TILLIER

http://www.coursdinfo.fr

FORMATION VBA EXCEL 2010

Livret 2 – Structure du langage VBA

Page 7: D g zach.1231

Ce support de cours est réservé à un usage

personnel. Toute utilisation et diffusion

dans le cadre d’une activité de formation

fait l’objet d’une licence de droit de copie.

Veuillez nous contacter si vous souhaitez

utiliser ce cours dans ce cadre.

Page 8: D g zach.1231

Table des matie res

Chapitre 1 Introduction ........................................................................................................................... 6

Chapitre 2 Syntaxe de base ..................................................................................................................... 7

2.1 Différentes zones d’un module ..................................................................................................... 7

2.2 Les commentaires ......................................................................................................................... 8

2.3 Les identificateurs ......................................................................................................................... 9

2.4 Les options ..................................................................................................................................... 9

2.5 Les mots réservés ........................................................................................................................ 10

2.6 Les constantes ............................................................................................................................. 13

Les nombres réels .......................................................................................................................... 13

Les caractères et chaînes de caractères ........................................................................................ 13

Quelques constantes VB ................................................................................................................ 14

2.7 Les types de base ......................................................................................................................... 16

2.8 Les variables ................................................................................................................................ 17

Les variables locales et variables globales..................................................................................... 18

Les variables statiques ................................................................................................................... 18

2.9 Exercice sur les variables ............................................................................................................. 19

Exécuter la macro .......................................................................................................................... 20

Pas à pas ........................................................................................................................................ 21

Questions (corrigé à la fin du livret) .............................................................................................. 21

Chapitre 3 Les tableaux ......................................................................................................................... 24

3.1 Création de tableau ..................................................................................................................... 24

3.2 Naviguer dans un tableau ............................................................................................................ 25

3.3 Exercice Tableau .......................................................................................................................... 26

Chapitre 4 Les instructions de contrôles ............................................................................................... 27

4.1 Généralités .................................................................................................................................. 27

4.2 If .. Then .. Else ............................................................................................................................. 27

Exercice .......................................................................................................................................... 28

4.3 Select Case ................................................................................................................................... 29

Exercice .......................................................................................................................................... 30

Chapitre 5 Les boucles ........................................................................................................................... 31

5.1 For .. To .. Next ............................................................................................................................ 31

Exercice .......................................................................................................................................... 32

Page 9: D g zach.1231

| Copyright © 2011 Thierry TILLIER Tous droits réservés

4

5.2 For each … Next ........................................................................................................................... 33

Exercice .......................................................................................................................................... 33

5.3 While .. Wend .............................................................................................................................. 34

5.4 Do While … Loop ......................................................................................................................... 34

5.5 Do .. Loop While .......................................................................................................................... 35

5.6 Do Until …Loop ............................................................................................................................ 35

5.7 Do . Loop Until ............................................................................................................................. 35

5.8 Exit ............................................................................................................................................... 36

Chapitre 6 Instruction Enum ................................................................................................................. 37

Chapitre 7 Les opérateurs ..................................................................................................................... 38

7.1 Opérateurs arithmétiques ........................................................................................................... 38

7.2 Opérateurs logiques .................................................................................................................... 38

7.3 Opérateurs de comparaison ........................................................................................................ 39

7.4 Opérateurs de concaténation ..................................................................................................... 39

7.5 Opérateur d’affectation d’objet SET ........................................................................................... 39

Chapitre 8 Les procédures ..................................................................................................................... 40

8.1 Les fonctions ................................................................................................................................ 40

8.2 Créer une fonction avec l’éditeur ................................................................................................ 44

8.3 Fonction avec paramètre ............................................................................................................ 46

8.4 Les arguments optionnels ........................................................................................................... 47

8.5 Les propriétés .............................................................................................................................. 48

Chapitre 9 La gestion d’erreur ............................................................................................................... 49

Chapitre 10 Debug ................................................................................................................................. 52

10.1 Messages d’erreurs courants .................................................................................................... 52

Erreur de compilation .................................................................................................................... 52

Erreur de paramètre ...................................................................................................................... 52

Erreur de syntaxe .......................................................................................................................... 52

Fenêtre de débogage..................................................................................................................... 53

Chapitre 11 Conclusion ......................................................................................................................... 54

Chapitre 12 Exercices ............................................................................................................................ 55

12.1 Exercice Prime ........................................................................................................................... 55

Chapitre 13 Corrigés .............................................................................................................................. 56

13.1 Exercice sur les variables ........................................................................................................... 56

13.2 Exercice Primes .......................................................................................................................... 58

Page 10: D g zach.1231

| Copyright © 2011 Thierry TILLIER Tous droits réservés

5

Page 11: D g zach.1231

Copyright © 2011 Thierry TILLIER Tous droits réservés

Chapitre 1 Introduction Dans ce cours, vous allez apprendre les instructions nécessaires à la programmation Visual Basic. Les

méthodes de programmation mentionnées dans ce livret sont celles utilisées dans la programmation

de langages plus évolués comme le C++ ou le VB.NET. Bien que le VBA ne soit pas un langage orienté

objet, nous nous efforcerons de nous en approcher. L'ensemble de ce livret vous servira de soutient

pour les applications. Vous ne retiendrez pas tout du premier coup, aussi, n'hésitez pas à y revenir

lorsque vous aborderez le livret suivant.

Prérequis : Bonne maîtrise d’Excel, Livret 1 VBA Excel 2010

Objectifs :

Maîtriser le langage Visual Basic

Utiliser les instructions de contrôles

Utiliser les boucles

Appliquer des règles de programmation

Retrouvez tous les cours sur http://www.coursdinfo.fr

RECOMMANDATION : PRENEZ LE TEMPS DE BIEN LIRE LES

INSTRUCTIONS.

Beaucoup de mots nouveaux seront utilisés dès le début, ne vous

focalisez pas trop dessus, ils seront largement expliqués dans le

déroulement du cours, l'objectif est dans un premier temps de vous

familiarisez avec ces mots.

Page 12: D g zach.1231

Copyright © 2011 Thierry TILLIER Tous droits réservés

THIERRY TILLIER FORMATIONS

http://www.coursdinfo.fr

06 81 51 11 24

[email protected]

Page 13: D g zach.1231

Thierry TILLIER

http://www.coursdinfo.fr

FORMATION VBA EXCEL 2010

Livret 3 – Les objets d’Excel

Page 14: D g zach.1231

Ce support de cours est réservé à un usage

personnel. Toute utilisation et diffusion

dans le cadre d’une activité de formation

fait l’objet d’une licence de droit de copie.

Veuillez nous contacter si vous souhaitez

utiliser ce cours dans ce cadre.

Page 15: D g zach.1231

Table des matie res

Chapitre 1 Introduction ........................................................................................................................... 6

Chapitre 2 Notions d’objet ...................................................................................................................... 7

2.1 Description .................................................................................................................................... 7

2.2 Encapsulation ................................................................................................................................ 7

2.3 Les objets ....................................................................................................................................... 8

2.4 Syntaxe des méthodes .................................................................................................................. 9

Chapitre 3 Les classes d’objets .............................................................................................................. 10

3.1 Les collections.............................................................................................................................. 10

3.2 Les objets ..................................................................................................................................... 11

Chapitre 4 Les objets cellules ................................................................................................................ 14

4.1 Exercice 1 – Format de cellule et changement de valeur ........................................................... 14

SpecialCells .................................................................................................................................... 16

Enregistrer un classeur de macro .................................................................................................. 19

Fonction IsNumeric ....................................................................................................................... 21

Select Case ..................................................................................................................................... 22

Fonction UCase .............................................................................................................................. 26

Exercice – couleur de fond de la cellule : ...................................................................................... 28

4.2 Exercice 2 – compter la récurrence d’une valeur ........................................................................ 29

Fonction Month ............................................................................................................................. 31

Select Case ..................................................................................................................................... 32

Eléments utilisés : .......................................................................................................................... 33

Boucles For... Next imbriquées...................................................................................................... 36

4.3 Exercice 3 - Table de multiplication............................................................................................. 38

Éléments étudiés : ......................................................................................................................... 38

4.4 Exercice 4 – Tableau chronologique ............................................................................................ 39

Eléments étudiés : ......................................................................................................................... 39

Type XlDataSeriesDate .................................................................................................................. 40

Chapitre 5 Les objets feuilles ................................................................................................................. 44

5.1 Exercice 1 – Changer le nom de la feuille .................................................................................... 44

Éléments étudiés : ......................................................................................................................... 44

5.2 Exercice 2 – Photo employés ....................................................................................................... 46

Eléments étudiés ........................................................................................................................... 46

Page 16: D g zach.1231

| Copyright © 2011 Thierry TILLIER Tous droits réservés

4

Insérer un contrôle image ............................................................................................................. 47

Événement SelectionChange ......................................................................................................... 50

ActiveWorkbook.Path.................................................................................................................... 52

5.3 Exercice 3 – Contrôler l’insertion de doublons dans une liste .................................................... 54

Eléments étudiés ........................................................................................................................... 54

Worksheet.Change ........................................................................................................................ 54

5.4 Exercice 4 – Ajouter 12 feuilles mensuelles ................................................................................ 57

Eléments étudiés ........................................................................................................................... 57

Chapitre 6 Les objets Classeurs ............................................................................................................. 59

6.1 Exercice 1 – Enregistrement automatique de classeur ............................................................... 59

Éléments étudiés : ......................................................................................................................... 59

Chapitre 7 VBA sur les applications ....................................................................................................... 62

7.1 Exercice 1 – Graphique Excel dans Word .................................................................................... 62

Eléments étudiés : ......................................................................................................................... 62

Instruction With............................................................................................................................. 64

7.2 Travailler avec une base de données Access ............................................................................... 65

Ajouter la références des objets Access ........................................................................................ 65

7.3 Les objets principaux ................................................................................................................... 66

Procédure de connexion à la base ................................................................................................ 67

Procédure pour remplir la feuille de calculs.................................................................................. 68

Procédure pour rechercher une donnée ....................................................................................... 69

Procédure pour ajouter une donnée à la base Access .................................................................. 70

Procédure pour modifier une donnée dans la base ACCESS ......................................................... 71

Chapitre 8 Boutons pour commander des macros ............................................................................... 72

Éléments étudiés ........................................................................................................................... 72

8.1 Créer des boutons ....................................................................................................................... 72

8.2 Modifier la taille des boutons ..................................................................................................... 78

8.3 Aligner les boutons ...................................................................................................................... 82

8.4 Créer le code des boutons ........................................................................................................... 84

8.5 Créer le code du classeur ............................................................................................................ 85

8.6 Exercice ........................................................................................................................................ 86

Chapitre 9 ANNEXE ................................................................................................................................ 87

9.1 Objet Sheet .................................................................................................................................. 87

9.2 Objet WorkBooks ........................................................................................................................ 90

Page 17: D g zach.1231

| Copyright © 2011 Thierry TILLIER Tous droits réservés

5

9.3 Objet WorkSheets ....................................................................................................................... 92

9.4 Objet WorksheetFunction ........................................................................................................... 94

9.5 Objet Range ................................................................................................................................. 95

9.6 Objet Cells.................................................................................................................................. 101

9.7 Les fonctions Texte .................................................................................................................... 102

Chapitre 10 Exercices .......................................................................................................................... 104

10.1 Inverser les lettres ................................................................................................................... 104

10.2 Rechercher une feuille de calcul ............................................................................................. 105

10.3 Déclencher une action à une heure précise ............................................................................ 105

10.4 Classer les feuilles par ordre croissant .................................................................................... 106

Chapitre 11 Corrigés ............................................................................................................................ 107

11.1 Exercice – couleur de fond de la cellule .................................................................................. 107

11.2 Exercice – Note 3ème Aquitaine ................................................................................................ 108

11.3 Inverser les lettres ................................................................................................................... 109

11.4 Rechercher une feuille de calcul ............................................................................................. 109

11.5 Déclencher une action à une heure précise ............................................................................ 110

11.6 Classer les feuilles par ordre croissant .................................................................................... 111

Chapitre 12 Index ................................................................................................................................ 116

Page 18: D g zach.1231

Copyright © 2011 Thierry TILLIER Tous droits réservés

Chapitre 1 Introduction Dans ce cours, vous allez apprendre les instructions nécessaires à la programmation Visual Basic. Les

méthodes de programmation mentionnées dans ce livret sont celles utilisées dans la programmation

de langages plus évolués comme le C++ ou le VB.NET. Bien que le VBA ne soit pas un langage orienté

objet, nous nous efforcerons de nous en approcher.

Prérequis : Bonne maîtrise d’Excel et les structures de programmation VBA.

Objectifs :

Créer des macros sur les cellules

Créer des macros sur les feuilles et les classeurs

Utiliser les principaux objets d’Excel

Retrouvez tous les cours sur http://www.coursdinfo.fr

Vous découvrirez VBA au travers de plusieurs TP. Ces TP vont aller croissant en difficulté.

Page 19: D g zach.1231

Copyright © 2011 Thierry TILLIER Tous droits réservés

THIERRY TILLIER FORMATIONS

http://www.coursdinfo.fr

06 81 51 11 24

[email protected]

Page 20: D g zach.1231

Thierry TILLIER

http://www.coursdinfo.fr

FORMATION VBA EXCEL 2010

Livret 4 – Les Formulaires

Page 21: D g zach.1231

Ce support de cours est réservé à un usage

personnel. Toute utilisation et diffusion

dans le cadre d’une activité de formation

fait l’objet d’une licence de droit de copie.

Veuillez nous contacter si vous souhaitez

utiliser ce cours dans ce cadre.

Page 22: D g zach.1231

Table des matie res

Chapitre 1 Introduction ........................................................................................................................... 5

Chapitre 2 TP – École de musique ........................................................................................................... 6

2.1 Formulaire de saisie ...................................................................................................................... 6

Éléments étudiés ............................................................................................................................. 6

Objectif final : créer ce formulaire permettant la saisie de nouvelles données. ............................ 7

2.2 Créer le formulaire UserForm ....................................................................................................... 8

2.3 La boîte à outils ............................................................................................................................. 9

2.4 Modifier la taille du formulaire ..................................................................................................... 9

2.5 Caption - Titre du formulaire ....................................................................................................... 10

2.6 Insérer des Labels (intitulés)........................................................................................................ 11

2.7 Aligner les contrôles .................................................................................................................... 15

2.8 Insérer des zones de texte (TextBox) .......................................................................................... 17

2.9 Insérer des zones de liste (ComboBox) ....................................................................................... 19

2.10 Insérer des cadres (Frame) ........................................................................................................ 20

2.11 Insérer des cases à cocher (CheckBox) ...................................................................................... 21

2.12 Insérer des boutons ................................................................................................................... 23

2.13 Nom du formulaire .................................................................................................................... 26

2.14 Préparation de la feuille de calcul ............................................................................................. 27

2.15 Code pour afficher le formulaire ............................................................................................... 27

Instruction Set ............................................................................................................................... 27

Événement click ............................................................................................................................. 31

2.16 Code VBA des contrôles du formulaire ..................................................................................... 33

Événement After_Update, fonction IsDate ................................................................................... 34

Fonction InStr ................................................................................................................................ 36

2.17 Initialisation du code des listes déroulantes (ComboBox) ........................................................ 37

Événement Initialize ...................................................................................................................... 37

2.18 Événement click sur le bouton Annuler .................................................................................... 38

2.19 Événement click sur le bouton Fermer ..................................................................................... 38

Événement Unload ........................................................................................................................ 38

2.20 Transférer les données du formulaire à la feuille de calcul ...................................................... 39

2.21 Événement Click sur le bouton Valider ..................................................................................... 40

Chapitre 3 Index .................................................................................................................................... 43

Page 23: D g zach.1231

| Copyright © 2011 Thierry TILLIER Tous droits réservés

4

Page 24: D g zach.1231

Chapitre 1 Introduction Vous apprendrez dans ce livret à Créer des formulaires qui permettent de saisir et contrôler les

informations à insérer dans les feuilles de calculs. Le formulaire que vous allez faire est une première

approche qui vous montrera comment utiliser les fonctions les plus courantes.

Prérequis : Bonne maîtrise d’Excel, connaitre les structures de programmation VBA

Objectifs :

Créer un formulaire (Userform)

Insérer des zones de texte, des boutons

Insérer des listes déroulantes

Interagir sur la feuille de calcul avec un formulaire

Utiliser les événements d’un formulaire

Retrouvez tous les cours sur http://www.coursdinfo.fr

Page 25: D g zach.1231

Copyright © 2011 Thierry TILLIER Tous droits réservés

THIERRY TILLIER FORMATIONS

http://www.coursdinfo.fr

06 81 51 11 24

[email protected]