Introduction au module : exercices corrigés en VBA Corrigé



Documents pareils
Algorithmique et programmation : les bases (VBA) Corrigé

Date M.P Libellé Catégorie S.Catégorie Crédit Débit Solde S.B

Guide de formation avec cas pratiques. Programmation. Philippe Moreau Patrick Morié. Daniel-Jean David

Access 2007 FF Access FR FR Base

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES

Guide d usage pour Word 2007

Préparation à l examen EFA en Macro

EXCEL TUTORIEL 2012/2013

SYSTRAN 7 Guide de démarrage

REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE MINISTERE DE LA FORMATION PROFESSIONNELLE. Microsoft. Excel XP

Comment créer et utiliser une fonction

FAA : Fonctions Automatiques de l Application. Les fonctions automatiques incluses dans vos applications développées avec

Le cas «BOURSE» annexe

Programmation VBA. Excel Daniel-Jean David. et Groupe Eyrolles, 2014, ISBN :

ENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque

Créer le schéma relationnel d une base de données ACCESS

Le cas «BOURSE» annexe

TABLEAU CROISE DYNAMIQUE

ANNEXE 8 : Le Mailing

Crédit Agricole en ligne

Access. Apprenez exactement ce dont vous avez besoin Progressez à votre rythme Téléchargez les exercices. Joyce Cox et Joan Lambert

CAPTURE DES PROFESSIONNELS

Installation de CPA STUDIO :

manuellement. Le prototype ayant obtenu des résultats satisfaisants aux différents essais de labour est validé sur le plan suivant :

Accès au Serveur de PAIE «SPV» par INTERNET Paramétrage du poste de travail «Windows»

NOS FORMATIONS EN BUREAUTIQUE

Direction générale statistique et information économique. Manuel d usage : l application web pour l enquête sur la structure des entreprises

Internet Explorer. Microsoft. Sommaire :

Préconisations Portail clients SIGMA

COURS DE MS EXCEL 2010

1) Installation de Dev-C++ Téléchargez le fichier devcpp4990setup.exe dans un répertoire de votre PC, puis double-cliquez dessus :

Chaque ordinateur est constitué de différentes unités de stockage de données (Disque dur, Graveur ) que l on peut imaginer comme de grandes armoires.

Antidote et vos logiciels

Mon aide mémoire traitement de texte (Microsoft Word)

Le partage du disque dur raccordé à la Bbox avec Windows Vista

Évaluation des compétences. Identification du contenu des évaluations. Septembre 2014

KIELA CONSULTING. Microsoft Office Open Office Windows - Internet. Formation sur mesure

Table des matières A. Introduction... 4 B. Principes généraux... 5 C. Exemple de formule (à réaliser) :... 7 D. Exercice pour réaliser une facture

GeoGebra & Microsoft Office 631

Support de TD ArcGIS Introduction à l automatisation et au développement avec ArcGIS 10.1 JEAN-MARC GILLIOT e année ingénieur

Sauvegarder sa messagerie Outlook 2010

Manuel d utilisation du Site Internet Professionnel

Utilisation de l outil lié à MBKSTR 9

Comment accéder à d Internet Explorer

Conférence et partage avec NetMeeting

Guide d installation UNIVERSALIS 2016

Fiche aide pour votre messagerie Outlook, thunderbird, Gmail

Progitek Backup- s Shareware version 6.0 du 1 er février 2008

Travaux pratiques Détermination de la capacité de stockage des données

INSTALLATION D UN CERTIFICAT FIDUCIO LOGICIEL

Créer et partager des fichiers

Installation de Microsoft Office Version 2.1

Programme d Accès Communautaire / Atelier 4 Initiation à Microsoft Excel PLAN DE COURS 3 MICROSOFT EXCEL 4 LANCER EXCEL 4

Antidote et vos logiciels

1 TD 2 : Construction d'une chier Acrobat et envoi par

Guide PME Version

Configuration requise pour l utilisation de la plateforme EnlightKS Online Certification Management Services ET2.13 Juin 2011

PARTAGE DE DOCUMENTS EN LIGNE AVEC ONEDRIVE

PARAMETRER INTERNET EXPLORER 9

LimeSurvey. Pour obtenir un compte sur le LimeSurvey de l Université de Genève, remplissez le formulaire de demande en ligne.

Répertorier vos mots de passe avec Passbox : 1) Télécharger le fichier d'installation :

Connecteur Zimbra pour Outlook 2007 et 2010 (ZCO) w

GUIDE Excel (version débutante) Version 2013

Microsoft. Access Utilisation de base. Fac Similé. Manuel de référence

FEN FICHE EMPLOIS NUISANCES

AIDE ENTREPRISE SIS-ePP Plateforme de dématérialisation des marchés publics

DECOUVERTE DU LOGICIEL CIEL GESTION COMMERCIALE

Guide d installation UNIVERSALIS 2014

Comment utiliser FileMaker Pro avec Microsoft Office

Utilisation de la Plateforme Office365 et d Oultlook Web App

Installation d un ordinateur avec reprise des données

Universalis Guide d installation. Sommaire

DOCUMENTATION POINT FACTURE

Mode d emploi du Bureau Virtuel (BV) à destination des étudiants en Formation À Distance (FAD)

Nouveautés Version Guide PME

PARAMETRAGE D INTERNET EXPLORER POUR L UTILISATION DE GRIOTTE

Open-Sankoré. Mise en route. Guide utilisateur Février 2013 NTICE (E. S.)

Planifier et contrôler un projet avec Microsoft Project

Mode d Emploi. Résult Arc Logiciel de Gestion de Compétitions. Droits d utilisation Informations Générales. 1/. Présentation de Résult Arc

Atelier Le gestionnaire de fichier

A C T I V I T É S CE QUE JE CONNAIS CONTEXTE PROFESSIONNEL. Quel est l élément essentiel du poste informatique? ...

Installation-Lancement

Table des Matières. Présentation Installation... 2 Mise en route Les Icones... 5 Les paramètres

Guide pour le bon fonctionnement des applications académiques avec Internet Explorer 7.x

Au préalable, nous nous plaçons dans l espace au sein duquel nous allons créer notre raccourci vers l ENTG.

Afin d accéder à votre messagerie personnelle, vous devez vous identifier par votre adresse mail et votre mot de passe :

26 Centre de Sécurité et de

Cahier n o 6. Mon ordinateur. Fichiers et dossiers Sauvegarde et classement

Installation et utilisation du client FirstClass 11

Perfectionnement Excel 2007

SOFI Gestion+ Version 5.4. Echanges de données informatiques Spicers Sofi gestion+ Groupements. SOFI Informatique. Actualisé le

Solution informatique pour l accueil, le suivi et l accompagnement de l usager. DOCUMENT DE FORMATION «Volet administratif»

Manuel de formation Spaceman 1 ère journée

Utiliser une base de données

1. Introduction Création d'une macro autonome Exécuter la macro pas à pas Modifier une macro... 5

Avertissement : Nos logiciels évoluent rendant parfois les nouvelles versions incompatibles avec les anciennes.

Modes Opératoires WinTrans Mai 13 ~ 1 ~

UserLock Guide de Démarrage rapide. Version 8.5

- Université Paris V - UFR de Psychologie ASDP4 Info Introduction à Windows

Note de cours. Introduction à Excel 2007

Transcription:

PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Exercices corrigés en VBA, Semaine 0 avril mai 2013 Corrigé Objectifs Installer l environnement de développement ; Se familiariser avec l environnement de développement ; Choisir les bons types ; Écrire un premier programme ; Manipuler les entrées/sorties ; Exercice 1 : Affichage d une ligne d une facture......................................... 6 1 Utilisation de l environnement Visual Basic sous Excel Le langage Visual Basic est l une des nombreuses variantes du très ancien langage BASIC (1964), initialement conçu pour faciliter l apprentissage de la programmation pour des nonspécialistes (BASIC = Beginner s All purpose Symbolic Instruction Code = langage de programmation à usage général pour débutants). Le Visual Basic est une adaptation développée par Microsoft qui a considérablement fait évoluer le BASIC des origines en lui apportant les concepts de l algorithmique moderne. Il peut être utilisé à partir de différents environnements : Soit à partir de la plate-forme Visual Basic permettant de créer des applications autonomes (dernières versions : VB 6.0 puis VB.NET) Soit à partir d applications dont la finalité première n est pas la programmation, mais qui peuvent être enrichies de fonctionnalités supplémentaires programmées dans une version Visual Basic intégrée : le VBA = Visual Basic édition Application ; c est le cas des applications de la famille Microsoft Office telles qu Excel, Word, Access ou Powerpoint, ou encore d applications plus spécialisées (par exemple le logiciel d information géographique ArcGIS) ; le VBA est un sous-ensemble du Visual Basic, dont la limite principale est qu il ne peut pas créer de programmes autonomes susceptibles de fonctionner indépendamment de l application qui l héberge ; il permet en revanche de pouvoir utiliser totalement tous les objets spécifiques de l application-hôte, par exemple les feuilles de calcul et les graphiques dans Excel. Tous les exemples qui seront traités dans le cadre du présent module d algorithmique de base pourront s exécuter dans n importe quel environnement VB ou VBA. Nous avons privilégié l utilisation de l environnement Excel, considérant sa très large popularité et sa finalité propre d outil de calcul. Exercices corrigés en VBA, Semaine 0 c INPT PAD 1/8

1.1 Terminologie : procédure, module, projet, éditeur Visual Basic En Visual Basic, une unité de programme s appelle une procédure, ou une macro (nous verrons plus tard les nuances entre ces 2 termes). Une procédure est une liste d instructions, en nombre généralement restreint, respectant la syntaxe du langage Visual Basic, et auxquelles on a donné un nom. La saisie ou la modification d une procédure s effectue au sein d une application appelée Editeur Visual Basic, qui s exécute sous forme d application séparée d Excel (dans une fenêtre Windows différente), mais qui ne peut se lancer que depuis Excel et se referme automatiquement si on ferme Excel. Les procédures sont écrites dans des modules, qui peuvent être vus comme des " feuilles de programme " du classeur Excel courant, non visibles par l application Excel mais uniquement par l éditeur Visual Basic. Un programme complet, associé à un classeur Excel, est appelé projet : il est généralement constitué de plusieurs modules, chacun d entre eux regroupant plusieurs procédures. 1.2 Chargement de programmes Les projets Visual Basic créés sous Excel sont sauvegardés dans un fichier-classeur d extension XLS. A l ouverture d un tel classeur (par exemple S0-cours.xls), la présence de modules en son sein peut donner lieu à divers comportements selon le paramétrage du niveau de sécurité d Excel : Sécurité élevée : les macros du classeur sont automatiquement désactivées (à moins que le classeur ait fait l objet d une " signature numérique " en vue de sa diffusion) Sécurité moyenne : une fenêtre d alerte-macro s affiche invitant l utilisateur à activer ou désactiver les macros ; en présence d un classeur Excel dont vous ne connaissez pas l origine, le réflexe doit être de désactiver les macros, qui sont généralement des " macro-virus " susceptibles de perturber ou endommager le fonctionnement de l ordinateur! En revanche, pour tous les classeurs que nous échangerons pendant la présente formation d algorithmique, il faudra bien évidemment activer les macros afin de pouvoir exécuter et tester les programmes écrits. Sécurité faible : les macros du classeur sont automatiquement activées ; en particulier, si une macro est attachée à l évènement " ouverture du classeur ", son exécution est lancée (c est ainsi que procèdent tous les virus de macro) : il est évident qu il ne faut jamais configurer Excel (ou toute autre application) sur un niveau faible de sécurité! Remarque : Pour plus de détails sur la sécurité, voir l aide en ligne d Excel (menu "? / Aide sur Microsoft Excel " ou touche F1), onglet Index, mot-clé " Macro ", rubrique " A propos de la sécurité des macros ". Par défaut, Excel est configuré avec un niveau de sécurité élevé, qui ne nous permet pas d exécuter les programmes que nous créerons. Il faut donc passer en niveau moyen de sécurité : valider le menu " Outils / Macro / Sécurité... ", onglet " Niveau de sécurité ", et cocher " Moyenne ". Attention : Exercices corrigés en VBA, Semaine 0 c INPT PAD 2/8

Il faut quitter Excel et le réouvrir pour que ce nouveau réglage prenne effet. 1.3 Exécution de programmes depuis Excel (Alt-F8) Depuis Excel, valider le menu " Outils / Macro / Macros... " (ou raccourci Alt-F8) : la liste des procédures exécutables s affiche dans une fenêtre pop-up intitulée " Macro ". Double-cliquer sur la procédure choisie (par exemple pgcd) pour lancer son exécution. Remarque : On peut également créer un bouton sur la feuille de calcul et lui associer la procédure de telle sorte que tout clic sur le bouton lance l exécution de la procédure : pour réaliser cela, afficher la barre d outils " Formulaires " (menu " Affichage / Barres d outils / Formulaires "), cliquer sur l icône en forme de bouton dans cette barre d outil, puis dessiner le contour rectangulaire du bouton par clic et " glisser " de la souris ; au relâchement, la fenêtre " Affecter une macro " s affiche : double-cliquer sur le nom de la procédure voulue pour l associer au bouton. Il reste à modifier le libellé affiché sur le bouton en cliquant sur le centre du bouton encore sélectionné pour taper le texte voulu. Ces 2 opérations (affecter une macro ou modifier le texte du bouton) peuvent être réalisées a posteriori en cliquant droit sur le bouton (à condition qu il ne soit pas en état " sélectionné " à ce moment : si c est le cas, cliquer hors du bouton pour le désélectionner). 1.4 Consultation de programmes : éditeur Visual BASIC (Alt-F11) Pour consulter le code Visual Basic du programme précédent, réouvrir la fenêtre " Macro " (utiliser dorénavant le raccourci Alt-F8), sélectionner par simple clic la procédure pgcd, puis cliquer sur le bouton " Modifier " : ceci provoque le lancement de l éditeur Visual Basic dans une fenêtre d application nouvelle, incluant une sous-fenêtre ouverte sur le module contenant la procédure pgcd, avec le curseur positionné en début de cette procédure. Il est également possible de lancer directement l éditeur Visual Basic depuis Excel avec le menu " Outil / Macro / Visual Basic Editor " (raccourci Alt-F11). Une fois sous l éditeur Visual Basic, il est utile de faire apparaître le volet Explorateur de projet par le menu " Affichage / Explorateur de projet " (ou raccourci Ctrl-R) : ceci permet de lister tous les projets actuellement ouverts (avec au minimum le classeur courant S0-cours.xls) et de montrer la structure de chacun : Catégorie " Microsoft Excel Objets " : elle indique une entrée pour chaque feuille de calcul du classeur, ainsi qu une autre pour le classeur lui-même (ThisWorkbook) ; dans l immédiat, nous n utiliserons pas ces entrées, destinées à des usages plus approfondis où l on souhaite attacher des procédures à des évènements particuliers touchant le classeur ou une feuille de calcul Catégorie " Modules " : elle indique la liste des modules constituant le projet ; pour consulter le code d un module, il faut double-cliquer sur son nom Exercices corrigés en VBA, Semaine 0 c INPT PAD 3/8

1.5 Sauvegarde de programmes (Ctrl-S) La sauvegarde d un projet, c est-à-dire de l ensemble des modules qui le constituent, s effectue en enregistrant le classeur correspondant, soit depuis Excel (" Fichier / Enregistrer " ou bouton " Enregistrer " ou raccourci Ctrl-S), soit depuis l éditeur Visual Basic (mêmes options). Il est également possible de sauvegarder isolément un module sous forme de fichier d extension.bas en cliquant droit sur son nom dans la fenêtre " Explorateur de projet " et en validant l option " Exporter un fichier ". Ceci est utile pour pouvoir récupérer ce module dans d autres environnements Visual Basic (VBA pour Word, par exemple). Symétriquement, un module peutêtre chargé à partir d un fichier.bas en cliquant droit sur le projet dans la fenêtre " Explorateur de projet " et en validant l option " Importer un fichier ". 1.6 Création de programmes et exécution depuis l éditeur Visual Basic (F5) Dans l éditeur Visual Basic, il faut rajouter un nouveau module en validant le menu " Insertion / Module ". On saisit ensuite le texte de la procédure entre les lignes Sub NomDuProgramme et End Sub. Puis on sauvegarde le projet sur disque avec le menu " Fichier / Enregistrer " - ou Ctrl-S. A titre d exemple, insérer un nouveau module (il prendra le nom par défaut " Module1 ") et taper le programme suivant : 1 2 Sub AfficherBonjour () 3 4 MsgBox "Bonjour" 5 6 End Sub Remarque : Pour renommer un module, il faut afficher la fenêtre " Propriétés " (menu " Affichage / Fenêtre Propriétés " ou raccourci F4) et saisir le nom voulu au droit de la propriété (Name) (par exemple ici : Test). On peut ensuite refermer cette fenêtre en cliquant sur le bouton de fermeture (symbole X). On peut tester immédiatement ce programme depuis l éditeur Visual Basic en lançant son exécution : positionner le curseur n importe où dans la procédure puis : valider l option " Exécuter la macro " du menu Exécution (ou raccourci F5) ou cliquer sur le bouton " Exécuter la macro " de la barre d outils standard de l éditeur Visual Basic Si le curseur n est pas positionné dans une procédure, une boîte de dialogue affiche la liste des procédures définies dans tous les modules des classeurs ouverts 1.7 Débogage : exécution " pas à pas " (F8, Maj-F8), points d arrêt (F9) Il est possible d exécuter le programme dans le mode " pas à pas " qui provoque une suspension de l exécution après chaque instruction traitée : Exercices corrigés en VBA, Semaine 0 c INPT PAD 4/8

valider l option " Pas à pas détaillé " du menu " Débogage " ou cliquer sur le bouton " Pas à pas détaillé " de la barre d outils " Débogage " ou appuyer le raccourci F8 La fenêtre du module contenant le code en cours d exécution s affiche alors, la prochaine instruction à exécuter étant surlignée en jaune, en l occurrence ici la ligne Sub PremierProgramme. On peut ensuite réitérer la même opération avec le raccourci Maj-F8 (maintien de la touche majuscule puis appui de F8), correspondant à l option " Pas à pas principal ", pour exécuter une instruction de plus. Remarque : La nuance entre les raccourcis F8 et Maj-F8 sera précisée ultérieurement lors de l étude des procédures et fonctions. A tout moment, on peut également poursuivre l exécution normale du programme jusqu à la fin : valider l option " Continuer " du menu Exécution ou cliquer sur le bouton " Continuer " (barre " Débogage ") ou appuyer sur le raccourci F5 On peut enfin clore l exécution du programme définitivement (en particulier si on veut ensuite relancer l exécution depuis le début) : valider l option " Réinitialiser " du menu " Exécution " ou cliquer sur le bouton " Réinitialiser " (barre " Débogage ") Attention : Cette opération sera notamment à réaliser toute les fois où un programme se sera bloqué sur une condition d erreur ; pour relancer le programme après correction de l erreur, il sera indispensable de le réinitialiser, sans quoi on aura une fenêtre d erreur qui indiquera : " impossible d exécuter le programme en mode Arrêt ". Il est également possible d insérer des " points d arrêt " dans un programme en cliquant dans la marge de la ligne voulue (zone grise) ou en validant l option " Basculer le point d arrêt " du menu " Débogage ", ou en cliquant sur le bouton " Basculer le point d arrêt " de la barre " Débogage ", ou encore en frappant le raccourci F9. Lorsque l exécution du programme passe sur un point d arrêt, l exécution est stoppée et peut ensuite être relancée manuellement selon les méthodes précédemment vues. On supprime un point d arrêt de la même manière qu on l a inséré (" Basculer le point d arrêt "). Le curseur peut aussi être utilisé comme point d arrêt temporaire en validant l option " Exécuter jusqu au curseur " du menu " Débogage ", ou en frappant le raccourci Ctrl-F8. D autres facilités de débogage existent et seront présentées ultérieurement (points d arrêt conditionnel, fenêtre " Espions ", fenêtre " Variables locales ",...etc.). 1.8 Configuration de l éditeur Visual Basic Les paramétrages principaux de l environnement Visual Basic s obtiennent par le menu " Outils / Options ". Nous utiliserons les réglages par défaut à l exception d un seul, qui nous apportera une sécurité dans l utilisation des variables : dans l onglet " Editeur ", au sein de la Exercices corrigés en VBA, Semaine 0 c INPT PAD 5/8

zone " Paramètres du code ", cocher la case " Déclaration des variables obligatoire ". Ce réglage demeurera valide pour toutes les sessions ultérieures de l éditeur Visual Basic et aura pour effet de rajouter automatiquement une première ligne Option Explicit lors de la création de tout module. Il permettra notamment de nous garantir contre un risque d erreur classique : la mauvaise orthographe d un nom de variable. 1.9 Séparateur décimal Le séparateur décimal pour les nombres réels peut correspondre au point ou à la virgule selon la configuration de votre système d exploitation. Sous Windows, ce réglage peut s effectuer via le Panneau de configuration, Options régionales et linguistiques, onglet " Options régionales ", bouton " Personnaliser ", zone " Symbole décimal ". Dans le cadre de cet enseignement, nous utiliserons le point décimal (convention internationale). 2 Exercice Exercice 1 : Affichage d une ligne d une facture Écrire un programme pour saisir le code d un article (un seul caractère), un prix unitaire hors taxe (exprimé en euros), une quantité entière. Il affiche ensuite un récapitulatif en donnant en plus le prix total hors taxes et TTC. Par exemple, l article de code T et de prix unitaire 2,5 a été commandé en 100 exemplaires. La ligne de facture affichée est donc la suivante : Solution : T 2.50 100 250.00 299.00 1 R0 : Afficher une ligne d une facture 2 3 tests : celui fournit dans le sujet. 4 5 R1 : Raffinage de «Afficher une ligne d une facture» 6 Saisir les caractéristiques de l article commandé 7 Calculer les prix 8 Afficher la ligne de la facture 9 10 R2 : Raffinage De «Saisir les caractéristiques de l article commandé» 11 Saisir le code 12 Saisir le prix unitaire 13 Saisir la quantité 14 15 R2 : Raffinage De «Calculer le prix» 16 17 prix_ht <- quantité * prix_unitaire prix_ttc <- prix_ht * (1 + TVA) 18 19 R2 : Raffinage De «Afficher la ligne de la facture» 20 Écrire(code, prix_unitaire, quantité, prix_ht, prix_ttc) Exercices corrigés en VBA, Semaine 0 c INPT PAD 6/8

On en déduit alors l algorithme suivant : 1 Algorithme ligne_facture 2 3 -- Afficher une ligne d une facture 4 5 Constante 6 TVA = 0.196 -- Taux de TVA 7 8 Variable 9 code: Caractère -- le code de l article 10 prix_unitaire: Réel -- le prix unitaire 11 quantité: Entier -- quantité de l article 12 prix_ht: Réel -- prix hors taxes 13 prix_ttc: Réel -- prix TTC 14 15 Début 16 -- Saisir les caractéristiques de l article commandé 17 Saisir le code 18 Saisir le prix unitaire 19 Saisir la quantité 20 21 -- Calculer les prix 22 23 prix_ht <- quantité * prix_unitaire prix_ttc <- prix_ht * (1 + TVA) 24 25 -- Afficher la ligne de la facture 26 Écrire(code, prix_unitaire, quantité, prix_ht, prix_ttc) 27 Fin 1 Attribute VB_Name = "io_quantite_produit" 2 ******************************************************************* 3 * Auteur : Claude Monteil <monteil@ensat.fr> 4 * Version : 1.0 5 Objectif : Afficher une ligne d une facture (sans controle) 6 ******************************************************************* 7 8 Sub ligne_facture() 9 Const TVA As Double = 0.196 Taux de TVA 10 Dim code As String le code de l article 11 Dim prix_unitaire As Double le prix unitaire 12 Dim quantite As Integer quantite de l article 13 Dim prix_ht As Double prix hors taxes 14 Dim prix_ttc As Double prix TTC 15 16 1.Saisir les caracteristiques de la ligne de facture 17 Afficher "Code article : " 18 Saisir code 19 Afficher "Prix unitaire : " 20 Saisir prix_unitaire 21 Afficher "Quantite : " 22 Saisir quantite 23 Exercices corrigés en VBA, Semaine 0 c INPT PAD 7/8

24 2.Calculer les prix 25 26 prix_ht = quantite * prix_unitaire prix_ttc = prix_ht * (1 + TVA) 27 28 3.Afficher la ligne de la facture 29 Afficher code, prix_unitaire, quantite, prix_ht, prix_ttc 30 End Sub Exercices corrigés en VBA, Semaine 0 c INPT PAD 8/8