fbpx
Cliquez ici pour avoir accès à la méthode pour bien démarrer sur Access
rapidement et sans être un expert en informatique

Tutoriel réalisé avec Access 2013

Un sous-formulaire est un formulaire inséré dans un autre formulaire. Il permet d’afficher les données de plusieurs tables ou requêtes au même endroit et en même temps.

Pour ce tutoriel, je vais utiliser la base de données utilisée pour la création de relations, car il est important que les tables des formulaires que je vais créer soient reliées. Pour cela, je vous invite à voir ou revoir l’article À quoi servent les relations entre les tables Access et comment les créer.

Pour mon exemple, je souhaiterais avoir un formulaire qui me permettrait d’afficher pour chaque client les factures qui lui ont été établies. Ce qui correspond à ce que l’on a pu voir précédemment lorsque l’on avait créé les relations et que nous sommes retournés dans la Table Clients.

Affichage de la table Clients avec la table des Factures en sous-formulaire

La différence est, qu’en utilisant un sous-formulaire, je peux afficher plus de données et de manière plus agréable.

Pour commencer, je vais créer mon formulaire principal qui sera basé sur ma Table Clients. Je ne vais pas rentrer dans le détail, car j’ai déjà publié un tutoriel sur la création d’un formulaire Access, je vous invite donc à le lire ou relire.

Je crée mon formulaire en utilisant l’Assistant Formulaire Icône Assistant formulaire dans l’onglet Créer. Je choisis la Table Clients et je conserve tous mes champs. Je choisis la disposition Colonne simple.

Je réorganise ensuite la présentation pour pouvoir avoir mon sous-formulaire juste en dessous de mon formulaire principal et pour lui appliquer une mise en page plus agréable.

Voici le formulaire principal mis en page :

Aperçu du formulaire clients

Maintenant, il ne me reste plus qu’à insérer mon sous-formulaire.

Pour cela, j’agrandis la zone Détail Partie Détail en Mode création en faisant glisser le Pied de formulaire Partie Pied de formulaire.

Puis, dans l’onglet Création, je fais dérouler les options de Contrôles :

Contrôles Access disponibles

Je clique ensuite sur Sous-formulaire/Sous-état Contrôle Sous-formulaire-Sous-état.

Comme dans l’article sur la création de formulaires, lorsque j’insérais une image, mon curseur se transforme en + avec une image de formulaire. Je peux donc soit dessiner le cadre de mon sous-formulaire soit faire un simple clic à l’endroit souhaité.

Au moment où je relâche mon clic, une boîte de dialogue apparaît : l’Assistant Sous-formulaire.

Fenêtre Assistant sous-formulaire pour choisir les données à utiliser

Je laisse cochée Utiliser les tables et les requêtes existantes puisque je n’ai pas créé d’autre formulaire, puis je clique sur Suivant.

Fenêtre Assistant sous-formulaire pour choisir les champs à utiliser

Je sélectionne ma Table Factures puisque mon formulaire principal contient déjà les informations des clients et je fais passer tous mes champs à droite sauf N° client qui ne sert qu’aux relations et qui ne me serait d’aucune utilité pour ce sous-formulaire. Je clique donc une fois sur Bouton Sélectionner tous les champs puis je me place sur N° client et je clique sur Bouton Désélectionner le champ en surbrillance. Je clique sur Suivant.

Fenêtre Assistant sous-formulaire pour définir les champs en lien

Comme j’ai créé une relation entre mes deux tables, je n’ai pas besoin de définir les champs effectuant le lien moi-même, je laisse cochée Choisir à partir d’une liste et Afficher Factures pour chaque enregistrement en Clients utilisant N° client. Je clique sur Suivant.

Fenêtre Assistant sous-formulaire pour le renommer

À cette dernière étape, je peux attribuer un nom à mon sous-formulaire, je laisse Factures sous-formulaire et clique sur Terminer.

Affichage du sous-formulaire en mode création

J’ai bien mon sous-formulaire sous mon formulaire principal. Je peux retourner en mode formulaire soit en cliquant sur le bouton Mode formulaire Affichage en mode formulaire soit sur la flèche en dessous puis Mode formulaire Bouton Mode formulaire pour visualiser la mise en page.

Aperçu du sous-formulaire en mode feuille de données

Je peux, en retournant sur le Mode création Bouton Mode Création, modifier la mise en page comme un formulaire classique.

Je peux déjà supprimer le titre du sous-formulaire en le sélectionnant et en appuyant sur la touche Suppr. Je déplace le sous-formulaire en cliquant une fois dessus, puis, lorsque le curseur se transforme en croix fléchée, je glisse l’encadré vers l’endroit souhaité. Ensuite, je l’agrandis en l’étirant avec la double flèche sur les points situés au milieu de chaque côté, car en Mode formulaire on ne voyait pas toutes les données d’un seul coup et dans ce cas nous sommes obligés de naviguer avec la barre de défilement, ce qui fait perdre les avantages de la création de ce sous-formulaire : voir toutes les données en un clin d’œil.

En Mode formulaire, je peux réduire automatiquement les dimensions des champs en double-cliquant sur les lignes les séparant. Mais je peux également cliquer droit sur un des champs, puis Largeur de champ Commande Largeur de champ et entrer une largeur. Pour attribuer la même largeur à chaque champ, il suffit de tous les sélectionner avec la flèche noire et de cliquer sur Largeur de champ Commande Largeur de champ . Je peux aussi centrer certains champs en retournant dans le Mode création en cliquant sur la flèche de l’Affichage Bouton Affichage de la feuille de données puis Mode création Bouton Mode Création.

Sachez que vous pouvez, en Mode formulaire, faire afficher le sous-formulaire avec la même présentation que le formulaire principal. Pour cela, cliquez droit sur le sous-formulaire, puis Sous-formulaire > Formulaire Mode Formulaire.

Pour mon exemple, je ne trouve pas cette présentation utile, car elle ne me permet pas de voir toutes les factures en une seule fois et je suis obligée de faire défiler les factures comme pour les clients.

Je peux repasser en mode Feuille de données en recliquant droit sur le sous-formulaire, toujours en Mode formulaire, puis Sous-formulaire > Feuille de données Mode Feuille de données.

Je peux maintenant, créer un nouveau client et lui établir une facture ou établir une facture à un client existant.

Lorsque je referme mon formulaire, on me demande si je souhaite enregistrer les modifications du formulaire et du sous-formulaire, je clique sur Oui.

Fenêtre Enregistrer pour enregistrer le formulaire et sous-formulaire

Mon sous-formulaire apparaît dans la liste des Formulaires et, lorsque je clique dessus, il est en mode feuille de données. Cependant, je ne l’utiliserais pas, car n’ayant pas ajouté mon champ N° client, je pourrais ajouter des factures, mais pas indiquer à quel client elle correspond.

Objets formulaire et sous-formulaire

 

Téléchargez « Créer un sous-formulaire Access » au format PDF

Je vous propose un fichier annexe dans l’Espace Membres contenant la base de données utilisée dans ce tutoriel.

Cliquez ici pour avoir accès à la méthode pour bien démarrer sur Access
rapidement et sans être un expert en informatique
neque. luctus porta. odio adipiscing tristique leo. libero