A3iformations · Microsoft Access

Les requêtes d’action

Modifier les données en masse : supprimer, mettre à jour, ajouter des enregistrements ou créer une nouvelle table, en une seule exécution.

Access 365Préparation TOSAQualiopi

Avant de commencer

Une requête de sélection affiche des données. Une requête d’action les modifie directement dans les tables, et Access ne permet pas d’annuler avec Ctrl + Z.

La méthode sûre, à suivre à chaque fois

  1. Sauvegardez la base : Fichier › Enregistrer sous › Sauvegarder la base de données.
  2. Construisez d’abord une requête de sélection avec les mêmes critères et vérifiez les enregistrements obtenus.
  3. Changez le type dans Création de requête › Type de requête : Création de table, Ajout, Mise à jour ou Supprimer.
  4. Contrôlez avec Affichage › Mode Feuille de données : Access montre les lignes concernées sans rien modifier.
  5. Cliquez sur Exécuter, lisez le message « Vous allez… n ligne(s) » et confirmez avec Oui.
Attention

Si rien ne se passe à l’exécution, la base est en mode désactivé : cliquez sur Activer le contenu dans la barre jaune d’avertissement de sécurité.

Bon à savoir

Dans le volet de navigation, chaque type de requête d’action a sa propre icône avec un point d’exclamation. Un double-clic sur l’une d’elles l’exécute : ouvrez-la plutôt avec clic droit › Mode Création.

1

Requête de suppression

ObjectifSupprimer en une fois tous les enregistrements qui répondent à un critère.

Pas à pas

  1. Créer › Création de requête, ajoutez T_Commandes.
  2. Cliquez sur Type de requête › Supprimer : la ligne Supprimer apparaît.
  3. Ajoutez le champ du critère, DateCommande, avec Où dans la ligne Supprimer.
  4. Critère : <#01/01/2021#, pour les commandes antérieures à 2021.
  5. Vérifiez en Mode Feuille de données, puis Exécuter et Oui.
ChampT_Commandes.*DateCommande
TableT_CommandesT_Commandes
SupprimerÀ partir deOù
Critères<#01/01/2021#

L’astérisque est facultatif : la ligne Où suffit pour supprimer des enregistrements complets.

Attention

Sans critère, la requête supprime tous les enregistrements de la table.

Bon à savoir

Si la relation avec une autre table applique l’intégrité référentielle, Access refuse de supprimer un client qui a des commandes. Avec l’option Effacer en cascade, ses commandes sont supprimées en même temps : vérifiez les relations avant d’exécuter.

2

Requête de mise à jour

ObjectifModifier la valeur d’un champ pour tous les enregistrements sélectionnés : hausse de tarif, correction d’une faute de saisie…

Pas à pas

  1. Créer › Création de requête, ajoutez T_Produits.
  2. Type de requête › Mise à jour : la ligne Mise à jour apparaît.
  3. Ajoutez le champ à modifier, PrixHT. Dans la ligne Mise à jour, saisissez la nouvelle valeur : [PrixHT]*1,05.
  4. Ajoutez le champ du critère, Catégorie, avec "Papeterie".
  5. Exécutez une seule fois et confirmez.
ChampPrixHTCatégorie
TableT_ProduitsT_Produits
Mise à jour[PrixHT]*1,05
Critères« Papeterie »

Hausse de 5 % sur les produits de papeterie.

BesoinLigne Mise à jourCritère
Corriger une saisie"Lille" (champ Ville)"Lile"
Remplir les vides"Non renseigné"Est Null
Mettre en majusculesMaj([Nom])
Remise de 10 €[PrixHT]-10>100
Attention

Chaque exécution applique le calcul de nouveau : exécutée deux fois, la hausse de 5 % devient 10,25 %. Ne double-cliquez jamais sur une requête de mise à jour dans le volet de navigation.

Astuce

Le Mode Feuille de données affiche les valeurs actuelles des champs à modifier, pas les nouvelles. Pour prévisualiser le résultat, ajoutez un champ calculé dans la requête de sélection de départ : NouveauPrix: [PrixHT]*1,05.

3

Requête d’insertion d’enregistrements (Ajout)

ObjectifCopier des enregistrements à la fin d’une table existante, par exemple pour archiver les anciennes commandes.

Pas à pas

  1. Créez une requête sur la table source, T_Commandes.
  2. Type de requête › Ajout. Dans la boîte de dialogue, choisissez la table destination, T_Commandes_Archive, dans la base active ou dans une autre base.
  3. Placez les champs à copier. La ligne Ajouter à indique le champ de destination : vérifiez chaque correspondance.
  4. Ajoutez le critère, par exemple DateCommande Entre #01/01/2021# Et #31/12/2021#.
  5. Exécutez et confirmez « Vous allez ajouter n ligne(s) ».
ChampN°CommandeN°ClientDateCommandeMontantHT
TableT_CommandesT_CommandesT_CommandesT_Commandes
Ajouter àN°CommandeN°ClientDateCommandeMontantHT
CritèresEntre #01/01/2021# Et #31/12/2021#
Attention

Les enregistrements dont la clé existe déjà dans la destination sont refusés : Access annonce « n enregistrement(s) non ajouté(s) en raison de violations de clé ». Ne lancez pas deux fois la même insertion.

Bon à savoir

Les champs n’ont pas besoin du même nom, mais leurs types doivent être compatibles. Un champ NuméroAuto de destination peut être laissé vide : Access le numérote lui-même.

4

Requête de création de table

ObjectifEnregistrer le résultat d’une requête dans une nouvelle table : copie de sauvegarde, extraction, export figé à une date.

Pas à pas

  1. Créez la requête de sélection : champs et critères de la future table.
  2. Type de requête › Création de table. Saisissez le nom, par exemple T_Clients_Arras_2026, dans la base active ou une autre base.
  3. Vérifiez en Mode Feuille de données.
  4. Exécutez : la table apparaît dans le volet de navigation.
  5. Ouvrez-la en Mode Création pour définir une clé primaire si nécessaire.
Attention

Si une table du même nom existe, Access propose de la supprimer avant de la recréer. Toutes ses données sont alors remplacées.

Bon à savoir

La nouvelle table copie les données et les types de champs, mais pas la clé primaire, les relations, ni la plupart des propriétés (masques, listes de choix, valeurs par défaut).

Astuce

Archivage complet en deux temps : une requête d’ajout (ou de création de table) copie les anciennes commandes, puis une requête de suppression avec le même critère les retire de la table active. Exécutez-les toujours dans cet ordre.

Récapitulatif

TypeLigne ajoutéeEffetRisque principal
SupprimerSupprimer : OùEfface des enregistrementsOubli du critère, suppressions en cascade
Mise à jourMise à jourRemplace des valeursExécution en double
AjoutAjouter àCopie dans une table existanteDoublons, violations de clé
Création de table(aucune)Crée une nouvelle tableRemplacement d’une table existante
Découverte

Exercice 1 : corriger une erreur de saisie

Dans T_Clients, la ville « Bethune » a été saisie sans accent. Créez R_MAJ_Bethune qui la remplace par « Béthune ».

Afficher le corrigé
  1. Requête sur T_Clients, Type de requête › Mise à jour.
  2. Champ Ville : Mise à jour "Béthune", Critères "Bethune".
  3. Vérifier en Mode Feuille de données, Exécuter, Oui.
Application

Exercice 2 : hausse de tarif ciblée

Augmentez de 3 % le prix des produits de la catégorie « Informatique » dont le prix est inférieur à 200 € HT.

Afficher le corrigé
  1. Sauvegarder la base, puis requête sur T_Produits, type Mise à jour.
  2. PrixHT : Mise à jour [PrixHT]*1,03, Critères <200.
  3. Catégorie : Critères "Informatique" sur la même ligne (condition ET). Exécuter une seule fois.
Maîtrise

Exercice 3 : archiver l’année 2021

Créez la table T_Commandes_Archive avec les commandes de 2021, puis retirez ces commandes de T_Commandes.

Afficher le corrigé
  1. Sauvegarder la base. Requête sur T_Commandes, tous les champs, DateCommande Entre #01/01/2021# Et #31/12/2021#.
  2. Type Création de table › T_Commandes_Archive › Exécuter. Noter le nombre de lignes.
  3. Nouvelle requête sur T_Commandes, type Supprimer, même critère sur DateCommande. Vérifier que le nombre de lignes est identique, puis Exécuter.
A3iformations · Organisme certifié Qualiopi · Centre de passage TOSA www.a3iformations.fr