Excel

Disponible uniquement sur Etudier
  • Pages : 16 (3752 mots )
  • Téléchargement(s) : 0
  • Publié le : 1 décembre 2010
Lire le document complet
Aperçu du document
15/01/2010

VBA Excel Rappels
ESGF 2009-2010 educros@pgsm.fr

ESGF 2009-2010

VBA Excel - Initiation

1

Accéder à l’éditeur visual basic (1)
• Tout d’abord, vous devez activer l’onglet développeur dans la barre de menu dé l d l b d
– Cliquez sur l’icône « Office » en haut à gauche. – Cliquez sur le bouton « options d’Excel ». – Cochez la case « Afficher l’onglet développeur »ESGF 2009

VBA Excel - Initiation

2

1

15/01/2010

Accéder à l’éditeur visual basic (2)
• Cliquez sur l’onglet « developpeur », puis sur le bouton « Visual Basic ». Une nouvelle fenêtre s’ouvre. Celle-ci contient à gauche la fenêtre « Projet ». • Faites en clique droit dans cette fenêtre puis insérez un nouveau module : insérer/Module. Une nouvelle fenêtre s’affiche alors.
ESGF 2009VBA Excel - Initiation 3

Ecrire une macro (1)
• Un module possède un nom. nom Il est possible de le renommer. Pour cela : affichez la fenêtre de propriétés (F4). • C’est donc dans un module que l on écrit l’on notre code VBA.

ESGF 2009

VBA Excel - Initiation

4

2

15/01/2010

Ecrire une macro (2)
• Maintenant tapez (rigoureusement) la chose suivante dans la fenêtre du module : dl f êt d d l

ESGF 2009

VBA Excel - Initiation

5

Exécuter la macro
• Revenez dans Excel puis cliquez sur le bouton « Macros » (dans la barre de menu de l’onglet développeur), puis sélectionnez votre macro et cliquez sur le bouton « exécuter » (ou « run »).

ESGF 2009

VBA Excel - Initiation

6

3

15/01/2010

Sauvegarder un classeur contenant du VBA
• Lorsque voussauvegardez votre classeur, le code VBA est sauvegardé avec. • Cependant, il faut bien faire attention à choisir le bon format de fichier.

ESGF 2009

VBA Excel - Initiation

7

Partie I

LES INSTRUCTIONS DE BASE

ESGF 2009

VBA Excel - Initiation

8

4

15/01/2010

Ecriture dans une feuille de calcul
• Ecrire du texte dans une cellule Range("A1") = "Bonjour" cela permet d’écrire« Bonjour » dans la cellule A1. • Ecrire dans plusieurs cellules Range("C4:E6") = 100.4 cela permet d écrire le nombre 100,4 dans toutes les cellules contenu d’écrire 100 4 dans la plage C4 à E6. • Pour écrire du texte il faut le mettre entre guillemets. • Les nombres à virgule s’écrivent avec un « . » en VBA.
ESGF 2009 VBA Excel - Initiation 9

Lire à partir d’une feuille de calcul
• Lire lecontenu d’une cellule : Range("F1") = Range("C4") cela permet de lire ce qu’il y a dans la cellule C4 et de le copier dans la cellule F1. • Autre exemple : Range("F1:F6") = Range("C4") cela permet de lire ce qu’il y a dans la cellule C4 et de le copier dans chacune des cellules de la plage F1 à F6. • Par contre, il ne faut pas écrire ça : Range("C4") = Range("F1:F6") en faisant preuve d’un peu delogique en comprend pourquoi…
ESGF 2009 VBA Excel - Initiation 10

5

15/01/2010

L’affectation
• Le symbole = désigne ce qu’on appelle une opération d’affectation. • L’expression suivante affecte le contenu de C4 à F1: Range("F1") = Range("C4") • L’affectation se fait toujours dans le même sens : Ce qu’il y a à droite du symbole = est affecté à ce qu’il y à gauche. Il n’est donc paspossible d’écrire 36 = Range("C4") • Le symbole = de VBA n’a pas le même sens que le symbole = en mathématique.
ESGF 2009 VBA Excel - Initiation 11

Autres façons d’accéder au contenu d’une cellule
• Il est possible de désigner une cellule en particulier d’ ne partic lier d’une plage de cell les l’e pression cellules, l’expression suivante permet de designer la cellule de coordonnées (2,3) et delui affecter la valeur 56 : Range( A8:C12 ).Cells(2, Range("A8:C12") Cells(2 3) = 56

ESGF 2009

VBA Excel - Initiation

12

6

15/01/2010

Ordre d’exécution des instructions
• Les instructions sont exécutées séquenciellement de haut en bas. • Il y a donc une grande différence entre : Range("A1") = "salut" Range("B1") = Range("A1") et Range("B1") = Range("A1") Range("A1") = "salut"...
tracking img