A3iformations · Microsoft Access

Les requêtes de sélection

Interroger une ou plusieurs tables, filtrer avec des critères, poser une question à l’utilisateur, croiser les données et repérer les anomalies.

Access 365Préparation TOSAQualiopi
Base exemple

Les exemples utilisent une base Gestion commerciale avec trois tables : T_Clients (N°Client, Nom, Ville, DateInscription), T_Commandes (N°Commande, N°Client, DateCommande, MontantHT) et T_Produits.

1

Créer une requête de sélection sur une table

ObjectifExtraire certains champs et certains enregistrements d’une table, sans modifier les données.

Pas à pas

  1. Onglet Créer › Création de requête.
  2. Dans le volet Ajouter des tables, double-cliquez sur T_Clients, puis fermez le volet.
  3. Double-cliquez sur les champs voulus pour les envoyer dans la grille de création. L’astérisque * ajoute tous les champs d’un coup.
  4. Réglez les lignes de la grille :
    • Tri : Croissant ou Décroissant.
    • Afficher : décochez un champ utilisé seulement comme critère.
    • Critères : la condition à respecter, par exemple "Arras".
  5. Enregistrez avec Ctrl + S et nommez la requête, par exemple R_Clients_Arras.
ChampNomVilleDateInscription
TableT_ClientsT_ClientsT_Clients
TriCroissant
Afficher☑☑☑
Critères« Arras »
Ou

Grille de création : les clients d’Arras triés par nom.

Astuce

Préfixez vos requêtes par R_ et vos tables par T_ : le volet de navigation reste lisible quand la base grossit.

2

Exécuter une requête

ObjectifAfficher le résultat d’une requête et basculer entre ses modes d’affichage.

Pas à pas

  1. Depuis le mode Création : Création de requête › Exécuter (bouton point d’exclamation rouge).
  2. Depuis le volet de navigation : double-cliquez sur la requête.
  3. Pour revenir à la grille : Accueil › Affichage › Mode Création, ou clic droit sur l’onglet de la requête.
Bon à savoir

Une requête ne stocke pas de données : elle mémorise une question. À chaque exécution, Access relit les tables et affiche un résultat à jour.

Attention

Une modification saisie dans le résultat d’une requête de sélection est enregistrée dans la table d’origine. Consultez sans modifier, sauf si c’est voulu.

3

Créer une requête sur plusieurs tables

ObjectifRéunir dans un même résultat des informations réparties dans plusieurs tables liées.
T_ClientsN°ClientNomVille
T_CommandesN°CommandeN°ClientDateCommandeMontantHT

Pas à pas

  1. Créer › Création de requête, puis ajoutez T_Clients et T_Commandes.
  2. Vérifiez la ligne de jointure entre les deux tables sur N°Client. Si elle manque, faites glisser N°Client d’une table sur l’autre.
  3. Ajoutez Nom (T_Clients), puis DateCommande et MontantHT (T_Commandes).
  4. Exécutez : chaque ligne associe une commande au nom du client.

Type de jointure

Double-cliquez sur la ligne de jointure pour ouvrir Propriétés de la jointure :

OptionRésultat
1 — Jointure interneSeulement les clients qui ont au moins une commande.
2 — Tous les clientsTous les clients, avec ou sans commande (jointure gauche).
3 — Toutes les commandesToutes les commandes, même sans client correspondant.
Attention

Deux tables sans jointure produisent un produit cartésien : chaque client est combiné avec chaque commande. 100 clients × 500 commandes = 50 000 lignes.

4

Utiliser des opérateurs pour un critère

ObjectifÉcrire des critères précis : comparaisons, intervalles, textes partiels, valeurs vides, conditions combinées.
OpérateurExemple de critèreSélectionne
= <> < > <= >=>=1000Montants d’au moins 1 000 €
Entre … EtEntre #01/01/2026# Et #31/03/2026#Les commandes du 1er trimestre 2026
Comme + joker *Comme "Dup*"Dupont, Dupuis, Duprez…
Comme + joker ?Comme "Mar?in"Martin, Marcin (un seul caractère)
DansDans ("Arras";"Lille";"Lens")Une des villes de la liste
PasPas "Arras"Toutes les villes sauf Arras
Est Null / Est Pas NullEst NullLes champs vides
Et / Ou>500 Et <1000Entre 500 et 1 000 € exclus

ET et OU dans la grille

  1. Critères sur la même ligne = condition ET : les deux doivent être vraies.
  2. Critères sur des lignes différentes (Critères, puis Ou) = condition OU : l’une suffit.
ChampVilleMontantHT
Critères« Arras »>1000
Ou« Lille »

Lecture : (Arras ET plus de 1 000 €) OU Lille, quel que soit le montant.

Champ calculé

Dans une cellule Champ vide, saisissez MontantTTC: [MontantHT]*1,2. Le texte avant les deux-points devient le nom de la colonne.

Astuce

Pour une saisie longue, faites un clic droit dans la cellule puis Zoom (Maj + F2), ou Créer pour ouvrir le Générateur d’expressions.

Bon à savoir

Dans Access en français : dates entre dièses #jj/mm/aaaa#, textes entre guillemets, séparateur de liste ; et virgule décimale.

5

Définir les propriétés d’une requête

ObjectifAffiner le résultat : supprimer les répétitions, limiter le nombre de lignes, renommer et formater les colonnes.

Pas à pas

  1. En mode Création, ouvrez la Feuille de propriétés : Création de requête › Feuille de propriétés (Alt + Entrée).
  2. Cliquez dans une zone vide au-dessus de la grille pour afficher les propriétés de la requête :
    • Valeurs distinctes = Oui : supprime les lignes identiques.
    • Premières valeurs : 5, 10 ou 25 % (à combiner avec un tri).
    • Description : une note sur le rôle de la requête.
  3. Cliquez dans une colonne pour régler ses propriétés : Format (Monétaire, Date abrégée…), Légende (titre affiché).
Astuce

Pour obtenir le « Top 5 » des commandes, triez MontantHT en Décroissant puis choisissez 5 dans Premières valeurs (aussi disponible dans le ruban, zone Retour).

6

Créer une requête sélection paramétrée

ObjectifPoser une question à l’utilisateur à chaque exécution, au lieu d’écrire un critère fixe.

Pas à pas

  1. Dans la ligne Critères du champ Ville, saisissez le texte de la question entre crochets : [Quelle ville ?].
  2. Exécutez : une boîte de dialogue affiche la question, l’utilisateur saisit Arras.
  3. Enregistrez la requête : elle resservira pour toutes les villes.
BesoinCritère
Valeur exacte[Quelle ville ?]
PériodeEntre [Date de début ?] Et [Date de fin ?]
Mot contenuComme "*" & [Mot recherché ?] & "*"
Seuil>=[Montant minimum ?]
Attention

Le texte entre crochets ne doit pas être identique au nom d’un champ, sinon Access ne pose pas la question. Écrivez [Quelle ville ?] et non [Ville].

Bon à savoir

Pour les dates et les nombres, déclarez le type : Création de requête › Paramètres, recopiez le texte exact du paramètre et choisissez Date/Heure. Access refuse alors une saisie invalide.

7

Créer une requête d’analyse croisée

ObjectifPrésenter une synthèse en tableau à double entrée, comme un tableau croisé dynamique.

Avec l’assistant

  1. Créer › Assistant Requête › Assistant Requête analyse croisée.
  2. Choisissez la source. Pour croiser deux tables, créez d’abord une requête qui les réunit et choisissez-la ici.
  3. En-têtes de ligne (jusqu’à 3) : Nom du client.
  4. En-tête de colonne (1 seul) : DateCommande, regroupée par Trimestre ou par Mois.
  5. Valeur : MontantHT avec la fonction Somme. Laissez cochée la ligne de totaux.
  6. Nommez la requête et cliquez sur Terminer.
NomTotalTrim 1Trim 2Trim 3
Dupont4 250 €1 200 €1 850 €1 200 €
Lefebvre2 900 €2 900 €
Martin3 100 €800 €1 100 €1 200 €

Exemple de résultat (données fictives).

Bon à savoir

En mode Création, le bouton Création de requête › Analyse croisée ajoute les lignes Opération et Analyse. Chaque champ y reçoit un rôle : En-tête de ligne, En-tête de colonne ou Valeur.

8

Créer une requête de non-correspondance

ObjectifTrouver les enregistrements d’une table qui n’ont aucun lien dans une autre : par exemple, les clients sans commande.

Avec l’assistant

  1. Créer › Assistant Requête › Assistant Requête de non-correspondance.
  2. Première table : celle dont on veut la liste, T_Clients.
  3. Deuxième table : celle où chercher la correspondance, T_Commandes.
  4. Champ commun : N°Client dans les deux tables.
  5. Choisissez les champs à afficher (Nom, Ville), nommez la requête, Terminer.
Bon à savoir

L’assistant crée une jointure gauche (option 2, tous les clients) avec le critère Est Null sur N°Client de T_Commandes. Vous pouvez la construire vous-même en mode Création.

9

Créer une requête pour trouver les doublons

ObjectifRepérer les enregistrements saisis plusieurs fois, avant de nettoyer la table.

Avec l’assistant

  1. Créer › Assistant Requête › Assistant Requête trouver les doublons.
  2. Choisissez la table : T_Clients.
  3. Champs à comparer : Nom et Ville. Deux lignes sont des doublons si toutes ces valeurs sont identiques.
  4. Champs supplémentaires à afficher : N°Client et DateInscription, pour savoir quelle fiche garder.
  5. Nommez la requête et cliquez sur Terminer.
Attention

Avant de supprimer un doublon, vérifiez qu’il n’est pas lié à des commandes. Rattachez d’abord les commandes à la fiche conservée, sinon vous perdez l’historique.

Astuce

Comparez sur plusieurs champs : deux « Martin » peuvent être deux personnes différentes, deux « Martin » à la même adresse beaucoup moins.

Récapitulatif

BesoinOutil
Filtrer une tableCréer › Création de requête
Voir le résultatExécuter (!) ou double-clic dans le volet
Combiner plusieurs tablesAjouter les tables + jointure sur le champ commun
Condition ET / OUMême ligne / lignes Critères et Ou
Sans doublons, Top NFeuille de propriétés : Valeurs distinctes, Premières valeurs
Question à l’utilisateur[Texte de la question ?] dans Critères
Tableau à double entréeAssistant Requête analyse croisée
Enregistrements orphelinsAssistant Requête de non-correspondance
Saisies en doubleAssistant Requête trouver les doublons
Découverte

Exercice 1 : les clients lillois

Créez R_Clients_Lille : Nom, Ville et DateInscription des clients de Lille, triés par nom.

Afficher le corrigé
  1. Créer › Création de requête › ajouter T_Clients.
  2. Ajouter Nom, Ville, DateInscription. Tri Croissant sur Nom.
  3. Critères de Ville : "Lille". Exécuter, puis Ctrl + S.
Application

Exercice 2 : grosses commandes du trimestre

Créez R_Grosses_Commandes_T1 : Nom du client, DateCommande, MontantHT et MontantTTC des commandes de plus de 1 000 € HT passées au 1er trimestre 2026.

Afficher le corrigé
  1. Ajouter T_Clients et T_Commandes, vérifier la jointure sur N°Client.
  2. Champs : Nom, DateCommande, MontantHT, puis MontantTTC: [MontantHT]*1,2.
  3. Sur la même ligne Critères : DateCommande Entre #01/01/2026# Et #31/03/2026# et MontantHT >1000.
Maîtrise

Exercice 3 : contrôle qualité du fichier clients

Produisez trois requêtes : les clients sans commande, les doublons sur Nom + Ville, et une requête paramétrée qui demande une période puis affiche les commandes correspondantes.

Afficher le corrigé
  1. Assistant de non-correspondance : T_Clients, puis T_Commandes, champ commun N°Client.
  2. Assistant trouver les doublons : T_Clients, champs Nom et Ville, afficher aussi N°Client.
  3. Requête sur T_Commandes, critère DateCommande : Entre [Date de début ?] Et [Date de fin ?], paramètres déclarés en Date/Heure.
A3iformations · Organisme certifié Qualiopi · Centre de passage TOSA www.a3iformations.fr