====== Activité 4 : les formulaires ====== Utilisez le même fichier Excel {{:dev:excelvba:td_excel_1.xls|}} contenant le modèle de facture que vous devez utiliser. ===== Travail à faire ===== * Vous devez créer un formulaire produit que vos appellerez **frmProduit** qui va permettre la saisie d'un nouveau produit et enregistrer les informations (Référence, Désignation, PU) dans la feuille **Produits**. * Ce formulaire sera lancé par un bouton placé dans la feuille **Produits**. * Ce bouton appellera la procédure **affichefrmProduit** qui affiche le formulaire. * Ajoutez un bouton nommé **cmdQuitter** dans votre formulaire **frmProduit**. En cliquant sur ce bouton, le formulaire doit se fermer. * Ajoutez à ce formulaire des contrôles pour saisir les informations sur un produit (Référence, Désignation et PU). Utilisez les contrôles **Intitulé** et **Zone de texte** pour construire votre formulaire et la **fenêtre Propriétés** pour personnaliser vos contrôles. Attention, à chaque enregistrement les informations doivent être placées sur une ligne différente. {{ :dev:excelvba:excelvba_22.png |}} ===== Compléments ===== * Utilisez le** menu Insertion** pour insérer un formulaire (UserForm) appelé **Produits**. {{ :dev:excelvba:excelvba_21.png |}} * Pour afficher un formulaire utilisez le code suivant : frmVide.Show * Pour pouvoir accéder à un autre formulaire ou à une autre fenêtre en gardant de formulaire ouvert il faut le rendre non modal : frmVide.Show vbModeless * Pour associer un code VBA à un bouton de formulaire, il faut double-cliquer sur celui-ci. Une procédure événementielle est alors créée e il ne reste plus qu'à ajouter le code VBA nécessaire. * Code pour fermer un formulaire Unload Me * Pour enregistrer le contenu d'un contrôle **Zone de texte** d'un formulaire dans la cellule de la feuille de calcul **Produits** située à la ligne 7 colonne 2, utilisez le code suivant : Worksheets("Produits").Cells(7, 2) = txtDesignation.Text ==== Retour au menu de Excel & VBA ==== [[dev:excelvba:accueil|Excel et VBA (Visual Basic pour Application)]]