DCG · UE 8 · Atelier corrigé

Atelier VBA — Lire une fonction et tracer une boucle

Couverture de l’UE : Première version : chaque rubrique du sommaire dispose d’un cours de méthode. La couverture reste partielle : approfondissements encore nécessaires en normalisation, fonctions de tableur, programmation VBA exécutée dans Excel, diagrammes BPMN complets et cas transversaux. Les exercices SQL sont contrôlés sur un jeu d’essai SQLite ; les particularités d’autres SGBD et tableurs doivent être vérifiées.

Objectif : Appliquer la méthode et expliquer ses contrôles.

Données du cas

Exemple de fonction VBA : Function NetHT(ByVal montant As Double) As Double If montant >= 1000 Then NetHT = montant * 0.9 Else NetHT = montant End If End Function Extrait indépendant de cumul : total = 0 For i = 1 To 3 total = total + i Next i Le code est présenté pour lecture et traçage ; il n’a pas été exécuté dans Excel dans cette validation. Dans l’extrait de cumul, les variables doivent être déclarées dans la procédure complète.

Démarche

Définissez le résultat attendu avant de choisir la formule ou la requête. Contrôlez les valeurs manquantes, les limites et le périmètre. Comparez votre réponse au corrigé en distinguant calcul, interprétation et conditions d’exécution.

Exercice

Que retourne NetHT(1000) ? Tracez les valeurs successives de total. Distinguez le rôle du paramètre et celui de la variable i.

Afficher le corrigé expliqué

NetHT(1000) retourne 900, avant toute règle d’arrondi supplémentaire. Dans la boucle : total commence à 0, puis vaut 1, 3 et 6. Le paramètre montant est une donnée reçue par la fonction ; i est le compteur des répétitions. La fonction rend sa valeur en l’affectant à son nom. Avant une utilisation réelle, intégrer le code au bon module, déclarer les variables et tester dans l’environnement Excel prévu, y compris les entrées non valides et les limites.

Question de validation

Après les trois répétitions, total vaut :

  1. 3
  2. 6
  3. 9
Vérifier la réponse

Réponse B : 6

Le cumul est initialisé à zéro puis augmente de 1, de 2 et de 3 : les valeurs successives sont 1, 3 et 6.

Sources complémentaires

Repères théoriques ; exemples et exercices originaux.

Référentiel

Annexe officielle DCG · Bulletin officiel

Ouvrir ce cours dans l’espace interactif →