Tutoriel réalisé avec Access 2010
Ce tutoriel est la suite de l’article sur la création d’une table Access.
Une requête permet de filtrer les informations d’une ou plusieurs tables.
SOMMAIRE
Comment créer une requête sur Access ?
Pour créer une requête, nous allons dans l’onglet Créer et on clique sur Création de requête.
Une boîte de dialogue s’affiche, on choisit d’afficher la table Clients et on la referme.
En développant la Table, on voit bien que tous nos champs sont présents.
Pour le paramétrage d’une requête, on sélectionne les champs : soit que l’on souhaite afficher dans notre résultat de requête soit dont on a besoin pour exécuter la requête, le reste n’est pas nécessaire.
Les différents types de requêtes Access
Plusieurs types de requêtes existent :
- Requête sélection : affiche les enregistrements répondant aux critères demandés ;
- Requête de création de table : enregistre les enregistrements, répondant aux critères, dans une nouvelle table ;
- Requête ajout : ajoute les enregistrements répondant aux critères dans une table existante ;
- Requête de mise à jour : met à jour les données d’une table existante selon les critères demandés ;
- Requête d’analyse croisée : affiche un tableau de synthèse selon les champs demandés ;
- Requête de suppression : supprime les données d’une table existante selon les critères demandés.
Pour notre première requête, nous allons créer une requête de sélection qui est la plus simple et la plus utilisée.
Exemple 1
Nous souhaitons connaître les coordonnées des clients habitants uniquement Paris.
Pour ce faire, nous allons double-cliquer sur tous les champs nécessaires à savoir : Civilité, Prénom, Nom, Adresse, CP, Ville, Téléphone, E-mail. Le Numéro client ne nous intéresse pas puisque c’est un numéro automatique qui ne sert qu’à Access.
Pour réaliser cette sélection, on se place sur la ligne de critères du champ Ville et on saisit
=Paris
et il suffit de cliquer sur Exécuter .
Nous avons bien nos enregistrements comportant les clients habitants Paris.
Exemple 2
Pour approfondir, nous souhaiterions avoir les clients de Paris ET Cergy.
On retourne sur le mode création en cliquant soit sur Affichage soit sur la flèche située en dessous puis Mode création . Sous la ligne où nous avons saisi Paris, on saisit =Cergy et on exécute de nouveau.
Autre possibilité : nous aurions aussi pu saisir à la place de
=Paris
=Paris ou Cergy
Cependant avec la première méthode, vous pouvez saisir autant de critères pour un même champ que vous le souhaitez en les saisissant les uns en dessous des autres même s’il n’y a pas de ou devant chaque Ville.
Exemple 3
Pour terminer sur un dernier exemple, on souhaiterait avoir la liste des clients avec qui nous avons commencé à collaborer depuis le 1er janvier 2012.
On retourne sur le Mode création et on double-clique sur Date de démarrage pour l’ajouter à la requête.
Dans Date de démarrage, on saisit
>01/01/2012
puis on clique sur Exécuter .
Si maintenant, je souhaite connaître les clients dont le démarrage se situe entre le 1er janvier 2012 et le 30 juin 2012, on retourne sur le Mode création
où nous saisissons :
>01/01/2012 et <30/06/2012
à la place de
>01/01/2012
puis on clique sur Exécuter .
Lorsque l’on a fini de créer notre requête et que l’on souhaite la refermer, on nous demande d’enregistrer. Nous allons appeler cette requête Démarrage.
Les requêtes se mettent à jour automatiquement c’est-à-dire qu’à chaque fois que vous ajoutez un enregistrement à votre table et qu’ensuite vous ouvrez de nouveau cette requête, cette dernière vous affichera vos derniers enregistrements s’ils correspondent à vos critères.
Nous verrons les autres types de requêtes avec différents exemples dans d’autres tutoriels.
Dans la prochaine partie de ce tutoriel, nous verrons comment créer un formulaire afin de modifier de manière plus conviviale les données de notre table.
Merci Lydia pour ce nouveau Tuto, toujours très intéressant.
Merci Murielle 🙂
Merci Lydia, bon courage.
Merci Lydia pour l’information, je suis prof d’informatique.
Bonjour,
Je souhaitais télécharger le fichier contenant la base clients de la partie 1.
A priori, ce fichier est compressé et j’ai du mal à l’extraire.
Pourriez-vous me donner un conseil pour y accéder ?
Je vous en remercie.
Bonjour,
Un lien dans la FAQ vous explique quoi télécharger.
Oups, désolé.
Merci pour la rapidité de votre réponse.
Votre fichier est sous Access 2010, or je n’ai que 2007.
Pensez-vous que je puisse l’ouvrir ?
Promis, ce sera ma dernière question.
Cordialement.
Normalement, oui, car les comptabilités sont pour 2000 et 2002-2003.
Salut Lydia, merci beaucoup. Ce sont vraiment de très très bons cours.
Merci. Grâce à vous, je crois que je vais enfin finir par comprendre Access et peut-être réussir mon cours !
Est-ce qu’il y a la possibilité de créer un champ calculé sur une table à partir de plusieurs tables ?
Utilisez plutôt un formulaire avec des champs calculés.
Bonjour cher tous, j’aimerais savoir comment importer un fichier Excel sur Sage Paie ?
Bonjour Christian,
Je vous invite à consulter la documentation de Sage Paie.
Bonjour ! On me demande de faire un rapport avec une mise en page comprenant un en-tête et un sous-titre, etc. Est-ce qu’il veut dire de faire un état ? Merci pour vos conseils et vidéos.
Bonjour, un rapport se fait avec Word et non Access.
Bonjour,
J’aimerais créer une requête pour trier les clients par département à partir d’une base de données d’adresse, téléphone… et leur code postal (sans faire un champ spécial département). Comment dois-je faire ?
Merci d’avance et merci pour vos tutos simples et efficaces !!!
Bonjour Sissi,
Dans les requêtes, vous pouvez trier par tri croissant ou décroissant lors de la création.
J’ai bien compris votre réponse, mais ce que je voudrais c’est faire une requête qui me montre par exemple uniquement les clients du département 21 pour leur envoyer des invitations, sachant que lorsque j’ai fait ma base de données, j’ai mis un code postal à 5 chiffres et non un champ de plus pour le département.
Merci encore de votre réponse.
Dans ce cas : Exclure, entièrement ou partiellement, un critère dans une requête Access
Parmi les centaines de tutos du web, je vais n’utiliser que les tiens et voir ou ça me mène, merci de tes services et dès que je serais une tête à Access et Illustrator, je ferai du Math Art.
Merci Matthieu 🙂
Bonsoir Lydia, c’est très intéressant vos tutos, merci beaucoup.
Bonjour,
J’aimerais créer un état dont chaque enregistrement doit être réparti sur quatre ou plusieurs feuilles différentes (exemple un contrat de travail). Comment dois-je le faire ?
Merci d’avance et merci pour vos tutos simples et efficaces !!!
Bonjour Hichem,
Il faut placer les contrôles des enregistrements concernés dans l’en-tête de page.
J’ai bien compris votre réponse, mais ce que je voudrais c’est faire un état dont les champs de chaque enregistrement sont répartis dans des feuilles différentes pour créer un état de plusieurs feuilles pour chaque enregistrement, sachant que lorsque je fais un saut de page en mode création dans mon état, je n’arrive pas à insérer mes différents champs dans la deuxième feuille.
Merci encore de votre réponse.
Essayez avec une requête dont le critère est un seul salarié (tout dépend de comment vos données sont présentées), voire même, mettre les coordonnées de la personne en en-tête.
Bonjour,
J’ai un contrat composé de 4 feuilles dont je dois remplir avec les données de chaque salarié. Comment dois-je faire un état composé de 4 pages en mode création ?
Merci d’avance et merci pour vos conseils et vidéos !!!
Bonjour Hichem,
Je n’ai pas compris. Les données doivent être saisies dans un formulaire ou écrites à la main après impression ?
Merci encore de plus.
Vous avez réalisé votre site avec WordPress. Moi, j’avais fait la formation de WordPress, mais il faut que tu me prennes en main pour le perfectionnement.
J’attends votre réponse le plus rapidement possible et à quand le démarrage des cours sur WordPress.
J’ai créé une formation WordPress et il y aura prochainement une mise à jour de celle-ci avant d’être à nouveau disponible sur le site.
Toutefois, il n’y a pas de coaching.
Bonjour Lydia,
Tout d’abord, je tiens à vous remercier pour votre cours, c’est vraiment intéressant. J’ai quelques questions dont j’espère que vous pourrez m’éclaircir.
Je veux faire une requête simple sur une table (pour la gestion financière des ménages).
J’ai 5 questions pour cette requête comme par exemple :
1 – Afficher toutes les transactions ventilées qui ont été payées par carte Visa
2 – Afficher tous les postes qui ont dépassé le budget annuel fixé
etc.
Est-ce que je dois faire une table pour chaque énoncé ou bien est-ce que ces données peuvent être mises ensemble ?
Bonjour Liliane,
Non, si la structure de votre base de données fait en sorte que ces données se retrouvent sur la même table, vous pouvez tout à fait l’interroger via une requête. Il suffit ensuite de mettre les critères sur les bons champs, mais tous sur la même ligne afin d’indiquer ET à Access. Si vous placez, un critère sur la ligne d’en dessous par rapport à un autre critère cela lui signifiera OU.
Merci beaucoup Lydia.
Les données des 2 premiers énoncés se trouvent sur une table (Transaction), mais les autres se trouvent sur différentes tables.
Donc, si j’ai bien compris, dès que les données sont sur différentes tables, il faut que je crée des tables séparées ?
Aussi, une requête peut contenir plusieurs tables.
Est-ce que c’est bien correct ?
Une requête peut faire appel à plusieurs tables, mais pour un résultat correct, il faut qu’elles soient liées.
Chaque table doit représenter une catégorie, par exemple, je ne vais pas mettre les fournisseurs et les clients dans une même table, mais l’idée de mettre les devis et factures dans la même table dépend du but et de la structure souhaitée.
Merci beaucoup Lydia.
Je vais essayer de nouveau.
PS : Je vous ai envoyé un message sur FB 🙂
Merci énormément, Lydia, de partager ton savoir-faire. Je cherchais vraiment quelque chose de simple comme ça pour mes élèves. Merci encore.
Bonjour, à l’exécution de la requête, la table Clients ne change pas. Pourtant, dans l’affichage de la requête, on voit que l’exécution de celle-ci est effective.
Bonjour,
Cette requête n’est pas destinée à modifier quelque chose dans la table.
Merci merci Lydia.
Merci beaucoup Lydia.
Bonjour,
Ils m’ont demandé à l’école de créer une base de données pour la gestion de stock d’un petit magasin de telle sorte que le nombre de stocks va diminuer d’une manière automatique. Je ne sais pas quel type de requête puis-je utiliser. Pouvez-vous m’aider s’il vous plaît ?
Merci d’avance.
Bonjour Zineb,
Je n’ai pas encore abordé la gestion de stocks sur Access. Toutefois, il y a ce tutoriel qui a l’air bien détaillé.
Bonjour Lydia, je suis encore débutant dans Access, mon prof m’a demandé de créer une base de données établissant d’acte de mariage au divorce. Je me demande donc quelles sont les entités (et propriétés) sur lesquelles je dois travailler.
En fait, je viens à peine de découvrir ce site, je l’ai découvert à travers YouTube.
Et je suis vraiment content de l’avoir découvert.
Merci à très bientôt.
Bonjour Kalil,
Je ne peux pas répondre à votre place, il faut identifier tous les champs dont vous aurez besoin et les « classer » par table.
Bonjour Lydia,
Merci beaucoup pour ce tutoriel.
Petite question concernant les critères à rentrer pour les requêtes. Est-il possible de suivre la liste déroulante pour les critères au lieu de les rentrer à la main ?
Je m’explique, votre liste déroulante civilité. Imaginons je veux les coordonnées que des messieurs, normalement, j’aurais écrit dans la partie critères du champ civilité « M. », mais est-il possible d’avoir la liste déroulante dans les critères au lieu d’écrire ?
En espérant avoir été clair,
Merci bien.
Gabriel
Bonjour Gabriel,
Non, il n’y a pas de liste déroulante dans les requêtes. Toutefois, rien ne vous empêche de placer une liste déroulante sur un formulaire et de baser le critère de votre requête sur ce formulaire.
Bonjour Lydia,
Merci pour votre retour. Je vais procéder autrement, car c’est moi-même qui remplit la base de données donc mes collègues ne connaissent pas exactement la manière comment j’ai écrit mes entités.
Je vais expliquer mon cas, ça sera plus simple. Je travaille avec des plans, ces plans ont des indices (A, B, C…), sachant que nous ne travaillons pas forcément avec le dernier indice, donc tout plan avec ses indices se doit d’être enregistré dans la base et accessible.
Donc mes collègues ne sauront pas si j’écris « Plan1 indice A » ou « Plan1-A » ou « Plan1A », etc. Voilà pourquoi l’idée de la liste déroulante à la base.
Mais j’avais pensé à un éventuel raccourci comparable à « * » sur Windows dans les recherches de fichiers. Par exemple, j’écris « *Plan1 » et ça me ressortirait toutes les entités qui ont « Plan1 » dans leur nom donc ça arrangerait les problèmes de rédaction.
En espérant avoir été clair,
Merci beaucoup.
Bonjour Gabriel,
Avec une liste déroulante comme indiquée dans mon précédent message, je ne vois pas pourquoi les utilisateurs ne sauraient pas choisir la bonne syntaxe puisqu’elle est écrite dans la liste et donc visible.
Ah, c’est une mauvaise compréhension de ma part, les formulaires permettent aussi de consulter les différentes données dans la base ? Pas seulement en ajouter ?
Bien sûr ! Ajouter, modifier, supprimer ou simplement consulter. Si vous le faisiez dans les tables alors c’est une mauvaise habitude à perdre, les tables ne servent qu’à stocker 🙂
Bonjour Lydia,
Ah bah, c’est parfait, merci ! Néanmoins, auriez-vous un tutoriel pour le formulaire « double affichage » ? Parce que lorsque je rentre mes critères, ça modifie ma première donnée, comment je consulte ?
(De plus, je vois que vous répondez très rapidement, mais je ne vois votre réponse que quelques heures plus tard, est-ce normal ? ^^)
Bonjour Gabriel,
Le mieux est de créer un formulaire filtré et un non filtré.
Et oui, c’est normal, je modifie l’heure pour que les commentaires se suivent dans mon interface (quand il y en a plusieurs en même temps).
J’avoue que je n’ai pas trop compris… J’aime bien le format double affichage.
Je sélectionne mes critères selon mes champs en haut et il me ressort en bas les différentes données qui respectent ces critères, est-ce que c’est possible ?
Le mieux aurait été de créer une véritable recherche multicritère et non pas via un formulaire double affichage.
Toutefois, dans mon message précédent, je vous invitais juste à dupliquer votre formulaire (copier-coller) dont l’un aurait vos filtres et l’autre aucun filtre.
Bonjour Lydia,
Oui, j’ai fait quelques recherches et il me semble que c’est le formulaire le mieux adapté (formulaire de consultation multicritères). Auriez-vous un tutoriel à me proposer ?
Je vous remercie.
Bonjour Gabriel,
J’ai créé plusieurs recherches multicritères pour mes clients et ce n’est pas de cette façon que je procède, mais plutôt via un formulaire principal et un sous-formulaire et à base de requête SQL dans certains cas, ce qui n’oblige pas mon client à avoir rempli tous les champs des enregistrements sur lesquels portent les critères de recherche. Je propose à la vente l’un des modules de ma formation plus complète sur Access, le Module Créer un formulaire Access de recherche multicritères.
Bonjour Lydia,
C’est bon, j’ai à peu près réussi ce que je voulais faire, merci !
Juste une question, est-il possible que lorsque je ne sélectionne rien dans la liste déroulante, ça m’affiche tous les enregistrements possibles ?
Car pour l’instant, il pense que je veux le critère « Null » donc il ne m’affiche rien.
En espérant avoir été clair,
Merci.
Bonjour Gabriel,
Cela vient de la façon dont vous avez créé votre recherche multicritère.
De ma manière, sans critère choisi, tout s’affiche.