Applies ToAccess pour Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Il peut arriver que vous souhaitiez trier des données, non par ordre alphabétique ou numérique, mais par ordre défini par l’utilisateur (également appelé ordre personnalisé ou logique). Par exemple, trier les jours de la semaine pour que le lundi apparaisse en premier est plus logique que le tri par ordre alphabétique, où vendredi apparaît en premier. Vous pouvez trier des données en mode Feuille de données d’une table ou d’une requête, ou dans la vue Formulaire d’un formulaire.

Que voulez-vous faire ?

Trier un petit nombre fini de valeurs de champ uniques

Dans cette procédure, vous allez écrire une expression qui utilise la fonction IIf pour classer les titres des employés.

Tout d’abord, créez une table qui contient trois champs : Title, FirstName et LastName. Dans le champ Titre, entrez les valeurs suivantes pour quatre nouveaux enregistrements :

  • Coordinateur des ventes à l’intérieur

  • Directeur commercial

  • Commercial

  • Vice-président, Ventes

Dans les champs FirstName et LastName des quatre enregistrements, entrez les noms souhaités.

  1. À présent, ouvrez la table en mode Feuille de données.

  2. Sous l’onglet Accueil , dans le groupe Trier & Filtre , cliquez sur Avancé , puis sur Filtre/Tri avancé dans le menu contextuel.

  3. Ajoutez les champs souhaités, tels que FirstName, LastName et Title, à la grille.

  4. Cliquez avec le bouton droit sur la ligne Champ dans la première colonne vide, cliquez sur Zoom, puis tapez l’expression suivante :

    IIf ([Title] = « Vice President, Sales », 1, IIf ([Title] = « Sales Manager », 2, IIf ([Title] = « Sales Representative », 3, IIf ([Title] = « Inside Sales Coordinator », 4, 5))))

    Title est le nom du champ qui contient les valeurs qui sont classées. Les valeurs placées entre guillemets sont les valeurs individuelles stockées dans le champ. La valeur numérique qui suit est le rang qui lui est attribué. L’expression précédente affecte les rangs 1 à 4 à quatre titres différents, et affecte le rang 5 à tous les autres. Lorsque vous effectuez le tri, les titres non mentionnés dans cette expression se voient attribuer le même rang (5).

  5. Dans la ligne Trier de la colonne contenant l’expression, cliquez sur Croissant.

  6. Sous l’onglet Accueil , dans le groupe Trier & filtre , cliquez sur Activer/désactiver le filtre.

    La fonction IIf retourne la valeur numérique qui correspond à la valeur dans le champ Titre. Par exemple, si la valeur dans le champ Titre est Sales Manager, le numéro attribué est 2. S’il existe une valeur dans le champ Titre qui n’est pas listée en tant qu’argument dans la fonction ( par exemple, coordinateur de district), le nombre 5 lui est attribué. La requête trie ensuite ces nombres dans l’ordre croissant.

Haut de la page

Trier un grand nombre de valeurs de champ uniques

Si vous avez un grand nombre de valeurs à classer, une meilleure façon de trier les données consiste à créer une table de recherche.

Supposons que la table Employees fait référence à plus de 50 titres différents. Vous devez d’abord créer une table de choix et préparer la table existante pour rechercher la nouvelle table. Vous associez ensuite les deux tables et créez une requête.

Créer une table de recherche et modifier la table existante

  1. Créez une table de recherche qui stockera les titres. Nommez la table tblTitles et définissez les champs sur les types de données indiqués entre parenthèses, comme indiqué dans le tableau suivant :

    TitleID (NuméroAuto)

    Titre (Texte)

    1

    Vice-président, Ventes

    2

    Directeur commercial

    3

    Commercial

    4

    Coordinateur des ventes à l’intérieur

  2. Définissez le champ TitleID comme clé primaire.

  3. Modifiez la table Employee afin qu’elle recherche la table tblTitles.

    • En mode Création, remplacez le nom du champ Titre par TitleID.

    • Dans la colonne Type de données , remplacez type de données par Nombre.

  4. Sous l’onglet Général , sous Propriétés du champ, remplacez Taille du champ parEntier long.

  5. Enregistrez la table et ignorez l’avertissement concernant la perte de données.

  6. Basculez en mode Feuille de données.

  7. Remplissez la colonne Titles avec la valeur TitleID qui correspond à la valeur title.

    Par exemple, pour les enregistrements où la valeur Title est Sales Manager, tapez 2. Pour Représentant commercial, tapez 3.

  8. Enregistrez et fermez la table.

Lier les deux tables

  1. Sous l’onglet Outils de base de données, dans le groupe Relations, cliquez sur Relations.

  2. Sous l’onglet Création , dans le groupe Relations , cliquez sur Ajouter des tables (ou Afficher les tables dans Access).

  3. Sélectionnez tblTitles et Employés, puis cliquez sur Ajouter pour les ajouter à la fenêtre Relations. Fermez la boîte de dialogue Afficher la table.

  4. Faites glisser le champ TitleID de la table tblTitles vers le champ TitleID de la table Employees.

    La boîte de dialogue Modifier les relations s’ouvre .

  5. Vérifiez que les noms de champs affichés dans les deux colonnes sont à la fois TitleID et que la zone Type de relation affiche Un-à-plusieurs. Si nécessaire, vous pouvez modifier les noms des champs.

  6. Activez la case à cocher Appliquer l’intégrité référentielle.

  7. Cliquez sur Créer pour créer la relation.

    La boîte de dialogue Modifier les relations se ferme et enregistre les modifications.

  8. Fermez l’onglet Relations .

Créer une requête

  1. Sous l’onglet Créer, dans le groupe Requêtes, cliquez sur Création de requête.

  2. Dans la boîte de dialogue Ajouter des tables (Afficher la table dans Access), cliquez sur l’onglet Tables , double-cliquez sur Employés, puis double-cliquez sur tblTitles.

  3. Ajoutez les champs EmployeeID, LastName et FirstName de la table Employees et le champ Title de la table tblTitles à la grille de création de requête.

  4. Basculez en mode Feuille de données.

Haut de la page

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.