Exercice 1 : prérequis tableur
L'objectif est de construire le classeur ex_intro.xlsx
décrit dans la section "prérequis tableur", en partant
d'un classeur vierge.
1) Construisez la feuille facture
(voir section formules).
2) Définissez la plage idTotal (voir section "plages nommées")
et vérifiez que les formules s'actualisent quand on ajoute un nouvel article.
3) Construisez la feuille consulter
(voir section "zones de liste"), puis adaptez la zone de liste et les formules à un
nombre quelconque d'articles.
4) Construisez la feuille "graphiques"
(voir section graphiques).
Exercice 2 : exécution de macros
1) Téléchargez le classeur ex_intro.xlsm, puis cliquez
sur le bouton "Colorier" de la feuille facture
afin d'exécuter la macro associée au bouton.
2) Il se peut, pour des raisons de sécurité, que la macro ne se déclenche pas.
Dans ce cas, pas de panique :
-
fermez le classeur.
-
lors de sa réouverture, vous verrez apparaître un message indiquant que, pour des
raisons de sécurité, les macros sont désactivées : changez alors d'option.
3) Pour faciliter l'exécution d'autres macros du classeur (Macro1 et Macro2), créez
deux boutons de commande :
-
sélectionnez la feuille de calcul (ici graphiques) dans laquelle va être ajouté le bouton.
-
sélectionnez la forme du bouton (commande "Formes" du menu "Insertion").
-
insérez le bouton.
-
ajoutez une légende et associez une macro (voir écran) au bouton.
Testez ces boutons et vérifiez qu'ils permettent de changer de type de graphique : courbe
(Macro1) ou diagramme en barres (Macro2).
Exercice 3 : éditeur Visual Basic
L'écriture de programmes Visual Basic s'effectue à partir d'un
éditeur que nous allons brièvement étudier.
1) Téléchargez le classeur ex_intro.xlsm et accédez
à l'éditeur (commande "Visual Basic" de l'onglet "Développeur").
Si cet onglet n'est pas visible, effectuez les manipulations adéquates
pour le faire apparaître (voir indications).
2) Dans l'éditeur, effectuez un double-clic sur l'icône
"Module1" afin d'examiner le contenu de ce module, puis modifiez la macro "colorier"
afin de changer la couleur rouge (3)
par la couleur jaune (6).
Pour tester les modifications, vous disposez de plusieurs solutions :
-
le bouton de commande "Colorier" dans la feuille de calcul "facture".
-
le menu "Exécution" de l'éditeur Visual Basic.
-
la commande "Macros" de l'onglet Developpeur.
3) Sauvegardez le classeur soit depuis l'éditeur Visual Basic, soit depuis une feuille de calcul.
Si vous souhaitez changer le nom du classeur (commande
Enregistrer Sous), vous
devrez être vigilant sur le format de fichier : en effet, le format par défaut n'enregistrant que les feuilles
de calcul, vos modules ne seraient alors pas sauvegardés.
Exercice 4 : enregistreur macro
1) Téléchargez le classeur ex_intro.xlsm, puis utilisez l'enregistreur macro
pour obtenir un programme mettant en gras la cellule A2 de la feuille "facture" :
-
démarrez l'enregistreur (commande "enregistrer une macro" de l'onglet Développeur)
-
mettez en gras la cellule A2 de la feuille "facture"
-
arrêtez l'enregistreur (commande "arrêter l'enregistrement" de l'onglet Développeur)
-
examinez le code obtenu
Le programme obtenu dépendant de la feuille active au moment du démarrage de l'enregistreur, il ne faut
pas vous inquiéter s'il diffère légèrement de celui donné dans la section
"enregistreur macro".
2) Utilisez l'enregistreur afin d'en déduire un programme soulignant tous les articles achetés à au moins
deux exemplaires.
3) Utilisez l'enregistreur afin d'obtenir un programme changeant le diagramme en barres de la feuille
graphiques en une courbe.
Exercice 5 : formulaires
Une variante de l'exercice précédent pour changer de type de graphique est d'utiliser deux boutons d'option regroupés
dans un composant de type "zone de groupe" (icone "xyz" de la boîte "controles de formulaire") :
1) Téléchargez le classeur ex_intro.xlsm, puis :
-
faites apparaître la boîte "contrôles de formulaire", grâce à la commande "Insérer" de
l'onglet "Développeur".
-
sélectionnez dans cette boîte les divers composants à ajouter, puis les positionner dans
la feuille de calcul.
-
faites un clic droit sur chaque bouton d'option, puis
liez le composant à la cellule G16 dans laquelle sera stocké
le choix de l'utilisateur (ici 1 ou 2).
2) Il vous reste à créer le bouton de commande et à lui associer la macro suivante :
Sub actualiser_graphique()
' activation du graphique
Set F = Worksheets("graphiques")
F.ChartObjects(1).Activate
' type graphique (d'après cellule liée G16)
If (F.Range("G16").Value = 1) Then
ActiveChart.ChartType = xlColumnClustered ' barres
ElseIf (F.Range("G16").Value = 2) Then
ActiveChart.ChartType = xlLineMarkers ' courbe
End If
' actualisation de la source de données
Set G = Worksheets("facture")
n = WorksheetFunction.CountA(G.Columns("A"))
ActiveChart.SetSourceData Source:=G.Range(G.Cells(1, 1), G.Cells(n, 2))
End Sub